[Baekjoon] 두 수의 합 / Python, 파이썬 / 3273
2022. 12. 15. 23:08ㆍBaekjoon/Silver
728x90
반응형
https://www.acmicpc.net/problem/3273
3273번: 두 수의 합
n개의 서로 다른 양의 정수 a1, a2, ..., an으로 이루어진 수열이 있다. ai의 값은 1보다 크거나 같고, 1000000보다 작거나 같은 자연수이다. 자연수 x가 주어졌을 때, ai + aj = x (1 ≤ i < j ≤ n)을 만족하는
www.acmicpc.net
문제 설명
더보기
문제
n개의 서로 다른 양의 정수 a1, a2, ..., an으로 이루어진 수열이 있다. ai의 값은 1보다 크거나 같고, 1000000보다 작거나 같은 자연수이다. 자연수 x가 주어졌을 때, ai + aj = x (1 ≤ i < j ≤ n)을 만족하는 (ai, aj)쌍의 수를 구하는 프로그램을 작성하시오.
입력
첫째 줄에 수열의 크기 n이 주어진다. 다음 줄에는 수열에 포함되는 수가 주어진다. 셋째 줄에는 x가 주어진다. (1 ≤ n ≤ 100000, 1 ≤ x ≤ 2000000)
출력
문제의 조건을 만족하는 쌍의 개수를 출력한다.
예제 입력 1
9
5 12 7 10 9 1 2 3 11
13
예제 출력 1
3
문제 풀이
import sys
input = sys.stdin.readline
N = int(input())
array = list(map(int, input().split()))
x = int(input())
array.sort()
result = 0
start = 0
end = N - 1
while start < end:
current = array[start] + array[end]
if current == x:
result += 1
start += 1
elif current < x:
start += 1
elif current > x:
end -= 1
print(result)
728x90
반응형
'Baekjoon > Silver' 카테고리의 다른 글
[Baekjoon] 단지번호붙이기 / Python, 파이썬 / 2667 (0) | 2022.12.17 |
---|---|
[Baekjoon] 통나무 건너뛰기 / Python, 파이썬 / 11497 (0) | 2022.12.17 |
[Baekjoon] 보물 / Python, 파이썬 / 1026 (0) | 2022.12.11 |
[Baekjoon] 시리얼 번호 / Python, 파이썬 / 1431 (0) | 2022.12.11 |
[Baekjoon] 좌표 압축 / Python, 파이썬 / 18870 (0) | 2022.12.11 |