728x90
https://www.acmicpc.net/problem/3040
손풀기용 문제
combination으로 두개의 값을 고르고, 그 두개의 값을 뺐을때 100이 되는 값을 찾는다.
그 두개의 값을 제거한뒤에 모든 값을 출력하면된다.
# import sys; input = sys.stdin.readline
from itertools import combinations
def main():
dwarves = [int(input()) for _ in range(9)]
total = sum(dwarves)
rm_v1, rm_v2 = None, None
for v1, v2 in combinations(dwarves, 2):
if total - v1 - v2 == 100:
rm_v1, rm_v2 = v1, v2
break
dwarves.remove(rm_v1)
dwarves.remove(rm_v2)
print(*dwarves, sep="\n")
if __name__ == '__main__':
main()
손풀기용 문제였지만 백트래킹으로 접근했을때 답을 틀렸다.
백트래킹 왜이렇게 약한지...
'STUDY > Algorithm' 카테고리의 다른 글
[백준] 15657 N과 M(8) python (0) | 2022.01.27 |
---|---|
[백준] 15654 N과 M(5) python (0) | 2022.01.27 |
[백준] 24230 트리 색칠하기 python (0) | 2022.01.26 |
[백준] 17073 나무 위의 빗물 python (0) | 2022.01.26 |
[백준] 17836 공주님을 구해라! C++ (0) | 2022.01.25 |