데카르트곱 (1) 썸네일형 리스트형 백준 7490 0 만들기 * itertools의 product 이용from itertools import*_,*l=map(int,open(0))o=' +-' # 결합 및 +-연산자while l: n,*l=l t=set() # 결과값을 저장해 둘 set(동일 값이 여러개 나올 수 있음으로) for e in product(o,repeat=n): # n길이의 데카르트 곱(cartesian product) s='1' for i in range(1,n): s+=e[i]+str(i+1) # 연산자 + 숫자 if eval(s.replace(' ',''))==0: t.add(s) # 공백을 없애고 평가한 값이 0이 될 경우 결과에 추가 print(*sorted(t),sep='\n') # 정렬 후 출력 print() * 브루트포.. 이전 1 다음