목록알고리즘/깊이&너비 우선 탐색(DFS&BFS) (21)
코드굽는 타자기
링크 16236번: 아기 상어 N×N 크기의 공간에 물고기 M마리와 아기 상어 1마리가 있다. 공간은 1×1 크기의 정사각형 칸으로 나누어져 있다. 한 칸에는 물고기가 최대 1마리 존재한다. 아기 상어와 물고기는 모두 크기를 가지고 있고, 이 크기는 자연수이다. 가장 처음에 아기 상어의 크기는 2이고, 아기 상어는 1초에 상하좌우로 인접한 한 칸씩 이동한다. 아기 상어는 자신의 크기보다 큰 물고기가 있는 칸은 지나갈 수 없고, 나머지 칸은 모두 지나갈 수 있다. 아기 상어는 자신의 크 www.acmicpc.net 문제설명 조건에 맞게 이동후 잡아먹고 레벨업 문제풀이 BFS로 거리측정 및 탐색 Comparator로 위에, 왼쪽인 기준으로 정렬 후 선택 문제코드 package baekjoon; import ..
링크 SWEA[7396] 문제설명 BFS 문제풀이 격자 완전탐색 -> 최적값의 경로만 고려하기 -> BFS 문제코드 import java.io.BufferedReader; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStreamReader; import java.util.Comparator; import java.util.LinkedList; import java.util.Scanner; import java.util.StringTokenizer; public class Solution7396_BFS { public static int[][..
링크 16234번: 인구 이동 N×N크기의 땅이 있고, 땅은 1×1개의 칸으로 나누어져 있다. 각각의 땅에는 나라가 하나씩 존재하며, r행 c열에 있는 나라에는 A[r][c]명이 살고 있다. 인접한 나라 사이에는 국경선이 존재한다. 모든 나라는 1×1 크기이기 때문에, 모든 국경선은 정사각형 형태이다. 오늘부터 인구 이동이 시작되는 날이다. 인구 이동은 다음과 같이 진행되고, 더 이상 아래 방법에 의해 인구 이동이 없을 때까지 지속된다. 국경선을 공유하는 두 나라의 인구 차이가 L명 www.acmicpc.net 문제설명 인접 칸과의 값 차이가 특정 범위 안이면 연결되어 인구가 이동하여 평균이 된다. 문제풀이 그래프의 연결성 문제, DFS가 좋대서 DFS로품. 문제코드 import java.io.Buffe..
링크 SWEA[2112] 문제설명 완전탐색 문제풀이 완전탐색 + 가지치기 = 백트래킹 시간초과 신경써야함 문제코드 import java.io.BufferedReader; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Solution2112 { public static int Ans=0; public static int D; public static int W; public static int K; public static int[][]..