1seul357
[SWEA] 부분집합의 합 본문
T = 10
for TC in range(T):
N = int(input())
arr = list(map(int, input().split()))
count = 0 # 합계는 테스트케이스별로 구하는 것이기 때문에 여기서 초기화
for i in range(1<<N): # 총 2의 N승 반복
sum_num = 0
for j in range(N): # 요소 수만큼 반복
if i& (1<<j): # i의 j번째 요소가 1이면 꺼내오기
sum_num += arr[j]
if sum_num == 0: # 합이 0이면
count += 1 # count +1
print('#{} {}'.format(TC+1, count))
'알고리즘 > SWEA' 카테고리의 다른 글
[SWEA] 구간 합 (0) | 2021.12.03 |
---|---|
[SWEA] Flatten (0) | 2021.12.03 |
[SWEA] 숫자를 정렬하자 (0) | 2021.12.03 |
[SWEA] 특별한 정렬 (0) | 2021.12.03 |
[SWEA] 문자열 비교 (0) | 2021.12.03 |