We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 620d696 commit 13a75d3Copy full SHA for 13a75d3
minjeong/TwoPointer_SlidingWindow/2025-01-20-[백준]-#1253-좋다.py
@@ -0,0 +1,32 @@
1
+import sys
2
+input = sys.stdin.readline
3
+
4
+# 입력
5
+N = int(input())
6
+arr = list(map(int, input().split()))
7
8
+arr.sort() # 투 포인터를 적용하기 위해 배열을 오름차순으로 정렬
9
+cnt = 0 # 좋은 수 개수
10
11
+for i in range(N):
12
+ target = arr[i] # 현재 '좋은 수'인지 확인할 목표값
13
+ left, right = 0, N-1
14
+ while left < right:
15
+ # 타겟 값과 동일할 경우
16
+ if target == arr[left] + arr[right]:
17
+ if right == i: # target이 양수이고 자기 자신이라면
18
+ right -= 1
19
+ elif left == i: # target이 음수이고 자기 자신이라면
20
+ left += 1
21
+ else: # 좋은 수 찾음
22
+ cnt += 1
23
+ break
24
+ # 타겟 값이 더 클 경우, 왼쪽 포인터를 오른쪽으로 이동
25
+ elif target > arr[left] + arr[right]:
26
27
+ # 타겟 값이 더 작을 경우, 오른쪽 포인터를 왼쪽으로 이동
28
+ else:
29
30
31
+# 정답 출력
32
+print(cnt)
0 commit comments