[백준 1253] 좋다

Junyoung Park·2022년 3월 1일
0

코딩테스트

목록 보기
141/631
post-thumbnail

1. 문제 설명

좋다

2. 문제 분석

투 포인터를 통해 좋은 수를 제외한 나머지를 정렬한 상태로 생성, startend를 하나씩 가감해가면서 합계를 비교하자.

3. 나의 풀이

import sys

n = int(sys.stdin.readline().rstrip())
nums = list(map(int, sys.stdin.readline().rstrip().split()))
nums.sort()

cnt = 0

for i in range(n):
    new_nums = nums[:i] + nums[i+1:]
    start = 0
    end = n-2
    num = nums[i]
    while start < end:
        sum = new_nums[start] + new_nums[end]
        if sum == num:
            cnt += 1
            break
        elif sum > num:
            end -= 1
        else:
            start += 1
print(cnt)
profile
JUST DO IT

0개의 댓글