일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- 백준 #알고리즘 #파이썬 #코딩테스트
- react #리액트 #동빈나
- DFS
- dp
- java #자바 #생활코딩
- 다익스트라
- 투포인터
- 백트랙킹
- 백준
- 재귀
- PYTHON
- css #웹 #생활코딩
- css #생활코딩 #웹
- 코딩테스트
- BFS
- 알고리즘
- 파이썬 #백준 #알고리즘 #코딩테스트
- 파이썬
- 프로그래머스 #파이썬 #알고리즘 #코딩테스트
- 파이썬 #알고리즘 #코딩테스트 #프로그래머스
- react #리액트 #동빈나 #나동빈 #유튜브강의
- 백준 #파이썬 #알고리즘 #코딩테스트
- java #자바
- 자바 #java
- Dijkstra
- 프로그래머스 #파이썬 #코딩테스트 #알고리즘
- 다이나믹프로그래밍
- java #자바 #나동빈
- 프로그래머스
- java #자바 #동빈나
Archives
- Today
- Total
커리까지
백준 3273번 두 수의 합 파이썬 본문
728x90
SMALL
문제
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())
num = sorted(list(map(int,input().split())))
m = int(input())
result = 0
for i in range(len(num)):
if i > m:break
a = num[i]
for i2 in range(i+1,len(num)):
b = num[i2]
if a+b == m:result +=1
elif a+b > m:break
print(result)
- n과 리스트, m을 입력받는다.
- 정렬한다.
- 돌면서 앞뒤랑 더해서 m이랑 같으면 +1하고 아니면 계속 돈다, 대신 m보다 적을때까지만 돈다.
728x90
LIST
'알고리즘 > 풀이' 카테고리의 다른 글
백준 1946번 신입 사원 파이썬 (0) | 2021.03.06 |
---|---|
백준 11286번 절댓값 힙 파이썬 (0) | 2021.03.06 |
백준 2559번 수열 파이썬 (1) | 2021.03.02 |
프로그래머스 2021 카카오 블라인드 신규 아이디 추천 파이썬 (0) | 2021.03.01 |
백준 9020번 골드바흐의 추축 파이썬 (0) | 2021.02.26 |
Comments