Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- Docker
- 나이순 정렬
- tlqkf
- 10814
- pwnable
- cmd2
- kotlin
- 파이썬
- 클라우드가 뭐야
- UNIQUE constraint failed
- python
- 애너그램 그룹
- 쏘큩
- Couldn't read row 0
- 6566
- col -1 from CursorWindow
- 코틀린
- Drive-By-Download
- java.lang.IllegalStateException
- 클라우드란?
- pwnable.kr
- cmd1
- SQLiteConstraintException
- pwable.kr
- 백준
- 블록체인
- Make sure the Cursor is initialized correctly before accessing data for it.
- 페니빙
- 포너블
- 액션바 필요없숴
Archives
- Today
- Total
푸르미르
[python]1182. 부분수열의 합 본문
N개의 정수로 이루어진 수열이 있을 때, 크기가 양수인 부분수열 중에서 그 수열의 원소를 다 더한 값이 S가 되는 경우의 수를 구하는 프로그램을 작성하는 문제다.
암생각 없이 하다가 틀렸다.
예제만 보고 아 세 숫자를 골라서 부분수열을 이루는 거구나 라고 혼자 착각을 하고 풀었다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
import sys
number, integer = map(int, sys.stdin.readline().split()) #개수와 정수를 받기
num_list = list(map(int, sys.stdin.readline().split())) #정수들 입력
case = 0 #경우의 수
a=0
for b in range(a+1, number-1): #pointer b
for c in range(b+1, number): #pointer c
if num_list[a] + num_list[b] + num_list[c]== integer:
case +=1
if a == number-2:
break
else:
a+=1
print(case)
|
cs |
그런 결과.
그래서 차근 차근 다시 읽어봤는데 부분수열이 내가 생각했던 부분수열이 아님을 깨달았다..
에를 들어 크기가 3인 정수들이 1, 2, 3이 주어졌을 때,
이렇게 고려를 해야한다는 것이다.
이 문제에서는 숫자들을 조합하는데 개수에 대한 조건이 없기 때문에 개수도 따로 정해지지 않은 것을 알 수 있다.
그래서
1
2
3
4
5
6
7
8
9
10
11
12
|
from itertools import combinations
import sys
number, integer = map(int, sys.stdin.readline().split()) #개수와 정수를 받기
num_list = list(map(int, sys.stdin.readline().split())) #정수들 입력
case = 0 #경우의 수
for i in range(1, number+1): #부분 수열을 구성할 정의 개수
subnet_list = list(combinations(num_list, i))
for subnet in subnet_list:
print(subnet)
if sum(subnet) == integer:
case+=1
print(case)
|
cs |
'Baekjoon Online Judge' 카테고리의 다른 글
[python]13706. 제곱근 (0) | 2021.09.28 |
---|---|
[c++]2309.일곱난쟁이 (0) | 2021.09.21 |
[python]7568. 덩치 (2) | 2021.04.29 |
[python]1914.하노이 탑 (0) | 2021.02.11 |
[python]10814.나이순 정렬 (4) | 2021.02.03 |