Processing math: 100%

백트래킹 2

[백준 python] 14889번 스타트와 링크

문제 링크 14889번: 스타트와 링크 예제 2의 경우에 1,3,6, 2,4,5로 팀을 나누면 되고, 예제 3의 경우에는 1,2,4,5, 3,6,7,8로 팀을 나누면 된다. www.acmicpc.net 문제 설명 짝수 N명의 사람들을 두개의 팀으로 나누어 각 팀의 능력치를 계산해 비교해 차이가 최소인 팀 구성을 구하는 문제 팀이 구성되면 구성원 끼리 순서가 없기 때문에 조합을 찾는 문제로 생각해 풀 수 있음 고민한 부분 python의 내장 라이브러리인 itertools의 combinations함수를 사용할 수 있을지 확인해보고 싶었다 백트래킹 문제가 조금 까다롭게 나오는 경우 중간에 탐색할 필요 없는 조건을 찾아 가지치기를 해주어야 하는데 이 문제에서는 가지치기 할 필요 ..

[백준 python] 14502번 연구소

문제 링크 14502번: 연구소 인체에 치명적인 바이러스를 연구하던 연구소에서 바이러스가 유출되었다. 다행히 바이러스는 아직 퍼지지 않았고, 바이러스의 확산을 막기 위해서 연구소에 벽을 세우려고 한다. 연구소는 크 www.acmicpc.net 문제 설명 빈 공간, 벽, 바이러스로 구성된 2차원 array를 입력받아 빈 공간 세 곳에 벽을 세운 후 바이러스가 퍼질 수 없는 영역의 수를 세는 문제 구현해야 하는 내용은 빈 공간에 1)세 개의 벽을 세우는 것, 2)바이러스가 퍼질 수 있는 영역을 BFS로 탐색하는 것, 3)감염되지 않은 영역을 세는 것 고민한 부분 아직 순열이나 조합을 응용하는 문제에 익숙하지 않아 긴 시간동안 고민을 했음 재귀 방식으로 3개의 블럭을 쌓은 후 BFS..

1