반응형 문제풀이81 [ 알고리즘 ] 코딩 - 백준 17472 - 다리만들기 2 .java 백준 17472 - 다리만들기 2 * 자바로 구현. * 지도 NxM * 섬은 상하좌우로 붙어있는 덩어리. * 다리를 연결해서 모든 섬을 연결하고자 한다. * 다리는 직선만 가능. 바다에만 설치가능. 다리길이는 2이상. * 1. 섬에 번호붙이기 (BFS, DFS) - BFS 이용 * 2. 모든 지도의 좌표를 돌며 각 섬마다 설치가능한 다리 놓기( 완전탐색 ) * 3. MST로 최소 다리 비용 찾기. (크루스칼, 프림) - 크루스칼 이용 ** 테스트케이스는 모두 맞는데 1%에서 틀렸습니다!!!! 해서 당황했다... ** 모든 섬이 연결이 되어있는지 확인을 안해서 틀렸다.. public class BOJ_17472_Make_Bridge2 { // 섬과 이어진 정보를 담는 클래스 static cla.. 2020. 9. 7. [ 알고리즘 ] 코딩 백준 16236 - 아기상어.java 백준 16236 - 아기상어 * 자바로 구현 * NxN크기 물고기 M마리 상어 1마리. * 한칸에는 물고기 1마리 * 아기상어 초기크기 2. 상하좌우로 한칸씩 이동 * 상어보다 큰 물고기의 칸은 지나갈 수 없음. * 같은 크기의 물고기는 먹지는 못하지만 지나갈 수는 있음. * 더 이상 먹을 수 있는 물고기가 공간에 없으면 엄마 상어 호출. ( 탈출조건 ) * 먹을 수 있는 물고기가 1마리. 그 물고기 먹으러 이동 * 1마리 이상이면 가장 가까운 물고기를 먹으러 간다. * - 거리 : 물고기가 있는 칸 까지 지나야하는 칸의 개수 * - 가까운 물고기가 많다면 가장 위에 물고기. 그런 물고기가 많으면 * - 가장 왼쪽부터 먹는다. * 상어 크기가 2인경우 물고기를 2마리 먹으면 3으로 커진다. * 3인경우에.. 2020. 9. 7. [ 알고리즘 ] 코딩 백준 17471 - 게리맨더링.java 백준 17471 - 게리맨더링 * 자바로 구현 * 한 도시가 N개의 구역으로 나뉘어있음. * 1~N번 구역을 두개의 선거구로 나누어야한다. * 이때 선거구에 포함된 구역은 모두 연결이 되어있어야한다. * 두 선거구에 포함된 인구 차이가 최소인 경우를 찾아 출력. * 선택한 구역과 선택하지않은 구역이 연결되어 있는지 확인하는 과정이 필요. * 여기서는 BFS를 두 번해서 풀이. public class BOJ_17471_Gerry_Mandering { // N : 구역수, area_population : 각 구역 인구수, resMin : 최소값. private static int N, area_population[], resMin; private static boolean selected_area[]; //.. 2020. 9. 7. [ 알고리즘 ] 코딩 백준 17144 - 미세먼지 안녕!!.java 백준 17144 - 미세먼지여 안녕 * 자바로 구현 * R x C 크기. * 1번열에 공기청정기 설치. 두행 차지. ( 2x1 size, -1로 표시) * 청정기가 없는 칸에는 미세먼지가 있음. 미세먼지의 양은 Ar,c * 1초동안 아래와 같은 일이 발생. * 1. 미세먼지 확산. -> 미세먼지가 있는 모든 칸에서 동시발생. * - 4방향으로 확산. 공기청정기가 있거나, 칸이 없다면 확산x * - 확상양은 Ar,c/5 소수점 버림 * - 남은 미세먼지의 양은 Ar,c - (Ar,c/5)x(확산된개수) * 2. 공기청정기 작동 * - 공기청정기에서 바람 나옴. * - 청정기의 위쪽바람은 반시계방향 순환. * - 청정기의 아래쪽 바람은 시계방향으로 순환. * - 바람이 불면 바람의 방향으로 모두 한칸씩 이동.. 2020. 9. 7. [ 알고리즘 ] 코딩 백준 1753 - 최단경로.java 백준 1753 - 최단경로 * 자바로 구현 * 방향그래프가 주어지고 주어진 시작점에서 다른 모든 정점으로의 * 최단경로를 구하는 문제. * 모든 가중치는 10이하. * V 2020. 9. 7. 이전 1 ··· 10 11 12 13 14 15 16 17 다음 반응형