Skip to content

Commit 78fdc26

Browse files
author
windsor
committed
[boj]부분수열의 합
1 parent 17d2fe8 commit 78fdc26

File tree

1 file changed

+26
-0
lines changed

1 file changed

+26
-0
lines changed
+26
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
from itertools import combinations
2+
3+
#idx를 뽑거나 뽑지 않는 경우의수.
4+
#N개를 뽑았을때 합이 S면 True, 아니면 False반환
5+
#idx 현재 판단의 기준이되는 idx / 목표하는 합 S / 누적합 partial_sum
6+
def partial_sequence(idx:int, N:int, S:int, partial_sum:int, sequence:list):
7+
if N < 0:
8+
return 0
9+
10+
if idx == len(sequence):
11+
if partial_sum == S and N == 0:
12+
return 1
13+
return 0
14+
15+
res = 0
16+
res += partial_sequence(idx+1, N-1, S, partial_sum+sequence[idx], sequence)
17+
res += partial_sequence(idx+1, N, S, partial_sum, sequence)
18+
return res
19+
20+
N, S = map(int, input().split())
21+
sequence = list(map(int, input().split()))
22+
23+
res = 0
24+
for _ in range(1,N+1):
25+
res += partial_sequence(0, _, S, 0, sequence)
26+
print(res)

0 commit comments

Comments
 (0)