본문 바로가기

조합

(3)
[백준] 15683번 : 감시 https://www.acmicpc.net/problem/15683 15683번: 감시 스타트링크의 사무실은 1×1크기의 정사각형으로 나누어져 있는 N×M 크기의 직사각형으로 나타낼 수 있다. 사무실에는 총 K개의 CCTV가 설치되어져 있는데, CCTV는 5가지 종류가 있다. 각 CCTV가 감 www.acmicpc.net 해당 문제는 완전탐색 + 깊이우선탐색 + 조합 문제로 해결 하였습니다. 1. CCTV를 하나씩 모두 다 돌려보며 사각지대의 최소값을 구합니다. 2. 해당 CCTV로부터 감시영역은 깊이우선탐색으로 탐색합니다.( 방향성이 있기 때문 ) 3. 재귀 함수를 통하여 CCTV를 하나씩 돌려보며 모든 조합을 호출 합니다. import copy cctv = ['1','2','3','4','5'] N,..
[백준] 17142번 : 연구소 3 https://www.acmicpc.net/problem/17142 17142번: 연구소 3 인체에 치명적인 바이러스를 연구하던 연구소에 승원이가 침입했고, 바이러스를 유출하려고 한다. 바이러스는 활성 상태와 비활성 상태가 있다. 가장 처음에 모든 바이러스는 비활성 상태이고, www.acmicpc.net 해당 문제는 완전탐색 + 너비우선탐색 + 조합 문제로 해결하였습니다. 1. 완전탐색 : 가능한 모든 경우의 수를 다 탐색해본다 ( M개의 활성바이러스를 가질 수 있는 경우의 수를 모두 탐색해본다.) 2. 너비우선탐색 : 해당 바이러스에서 빈방으로 바이러스를 퍼트린다. (최소 거리 탐색이기때문에 너비우선탐색 선정) 3. 조합 : M개의 활성화 바이러스를 가질 수 있는 경우의 수를 모두 구한다. 생각해야할 ..
[백준] 15686번 : 치킨거리 https://www.acmicpc.net/problem/15686 15686번: 치킨 배달 크기가 N×N인 도시가 있다. 도시는 1×1크기의 칸으로 나누어져 있다. 도시의 각 칸은 빈 칸, 치킨집, 집 중 하나이다. 도시의 칸은 (r, c)와 같은 형태로 나타내고, r행 c열 또는 위에서부터 r번째 칸 www.acmicpc.net 집의 위치와 치킨집의 위치를 담는 리스트를 각각 생성합니다. 그리고 최대N개의 치킨 집을 선택해서 치킨거리의 최소값을 구해야 하기때문에 최대 N개를 선택할수 있는 경우의 수를 생성합니다. 치킨집의 위치를 담는 리스트의 조합(Combination) 을 이용하여 치킨집의 위치의 조합을 만들고 그 조합을 사용하여 각각의 치킨거리를 계산한뒤 최소값을 출력해냅니다. from itert..