https://www.acmicpc.net/problem/28353
28353번: 고양이 카페
첫째 줄에 정수 $N$과 $K$가 공백으로 구분되어 주어진다. $(1 \leq N \leq 5\,000;$ $1 \leq K \leq 10^9)$ 둘째 줄에는 각 고양이의 무게를 의미하는 $N$개의 정수 $w_1, w_2, \dotsm, w_N$이 공백으로 구분되어 주어
www.acmicpc.net
# 투 포인터 알고리즘
N, K = map(int, input().split()) # 고양이 마리수/두 고양이 최대 무게
cats = list(map(int,input().split())) # 고양이들 무게
ans = 0
cats.sort()
start, end = 0, N-1
while start < end: # start가 end보다 크거나 "같을 때" break
if cats[start] + cats[end] > K:
end -= 1
elif cats[start] + cats[end] <= K:
ans += 1
end -= 1
start += 1
print(ans)
'백준' 카테고리의 다른 글
백준 1926. 그림 (0) | 2024.03.02 |
---|---|
백준 27527. 배너 걸기 (0) | 2024.03.01 |
백준 11725. 트리의 부모 찾기 (0) | 2024.02.28 |
백준 2531. 회전 초밥 (0) | 2023.11.13 |
백준 1135. 뉴스 전하기 (0) | 2023.11.07 |