[ BOJ ] 14888 / 연산자 끼워넣기
문제 n개의 수로 이루어진 수열이 주어집니다. 수와 수 사이에 끼워 넣을 수 있는 n-1개의 연산자가 주어집니다. 연산자는 +, -, x, / 로만 구성됩니다. 주어진 수열의 순서를 바꾸는것은 안됩니다. Solve 연산자의 순열을 구합니다. operator = ['+', '+', '-', '*', '/'] arr = itertools.permutations(operator, len(operator)) print(len(list(arr))) # 120 ('+', '+', '-', '*', '/') 이런게 겹치는 것을 확인할 수 있습니다. 이때 전체 길이는 120입니다. arr = itertools.permutations(operator, len(operator)) arr_set = set(list(arr)..
2022. 7. 26.
[ Python ] Combination (조합)
서로 다른 n개 중에서 r개를 취한 조합을 의미합니다. 조합은 순서를 고려하지 않습니다. python의 itertools 라이브러리를 이용하면 순열과 조합을 for 문 없이 구현할 수 있습니다. combinations 함수를 사용합니다. ex) 예를 들어 [ 1, 2, 3 ] 의 리스트가 존재할 때, 2개의 원소를 골라 나열하면 [ [1, 2], [1, 3], [2, 3] ] 총 3가지가 나오게 됩니다. 이때 [1, 2] 와 [2, 1]은 같은 것으로 취급합니다.
2022. 7. 4.