코딩 테스트 문제 풀이

Do it 알고리즘 코딩 테스트 - 8번 / 해석 미완성

김복칠 2023. 10. 27. 02:12

문제.

https://www.acmicpc.net/problem/1253

 

1253번: 좋다

첫째 줄에는 수의 개수 N(1 ≤ N ≤ 2,000), 두 번째 줄에는 i번째 수를 나타내는 Ai가 N개 주어진다. (|Ai| ≤ 1,000,000,000, Ai는 정수)

www.acmicpc.net


코드.

n = int(input())
m = list(map(int,input().split()))

m.sort()
count = 0

for c in range(n):
    a = 0
    b = n-1
    while a < b:
        if (m[a] +m[b]) == m[c]:
            if (a != c) and (b != c):
                count += 1
                break
            elif a == c:
                a += 1
            elif b == c:
                b -= 1
        elif (m[a] +m[b]) < m[c]:
            a += 1
        else:
            b -= 1

print(count)

 

입력 값 출력 값
10

1 2 3 4 5 6 7 8 9 10
8

해석 및 풀이.

N개의 수를 입력받아 그 중 두개의 수를 더해서 N이 되는 횟수를 출력하는 프로그램을 만드는 문제입니다.