백준43 백준 - 호석이 두 마리 치킨 문제 설명 치킨집 두곳을 차리는데, 모든 건물에서 가장 가까운 거리에 있는 곳에 치킨집을 차린다. 주의사항 간선의 개수 M의 범위 생각한 아이디어 플로이드 워셜을 이용하여 거리 측정하고 각 최소 거리를 구한다. 풀이 static final int INF = (int)1e9; static int n, m; static int[] picks = new int[2]; private static int[][] edges; static int roundTripAnswer = INF; static int[] chickensAnswer; /** * 모든 건물에서 접근성이 가장 좋은 치킨집 2곳을 선정하고 거리를 측정하라 */ public static void main(String[] args) throws IOExc.. Algorithm/백준 2023. 3. 27. 백준 - 캐슬 디펜스 문제 설명 궁수를 선별하여 위치시키고 적들을 최대 몇명을 사살하는 문제이다. 주의사항 문제 잘 읽어야 한다. 궁수 위치는 문제에서 주어지지 않는다. [내가 배치해야 한다.] 문제를 보면 격자판의 N번행의 바로 아래(N+1번 행)의 모든 칸에는 성이 있다. 그러면 궁수의 위치는 열만 정해주면 된다. 여기에 궁수가 있어야 할 행번호이다. 즉 궁수는 성에 있는 것을 알 수 있다 궁수는 동시에 공격할 수 있다(동일 적을 타겟팅) 적은 한칸씩 밑으로 이동한다. 범위를 넘어가면 그냥 없애는 것이다 풀이 static class Node { int y, x; public Node(int y, int x) { this.y = y; this.x = x; } public int getDist(int y, int x) { r.. Algorithm/백준 2023. 3. 24. 백준 - 종이조각 문제 설명 2차원 배열이 주어진다. 2차원 배열을 적절히 조각내어 자르고 만들 수 있는 최댓값을 출력한다. 같은 경계에 있으면 숫자를 이어붙이고 다른 경계에 있는 숫자는 더한다. 시도 가로로 붙일지, 세로로 붙일지 2가지의 선택한다. 풀이 static int n, m, answer; static int[][] paper; static boolean[][] v; public static void main(String[] args) throws IOException { BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(reader.readLine(.. Algorithm/백준 2023. 3. 24. 백준 - 스티커 붙이기 문제 설명 스티커를 해당 칸에 최대 몇개까지 붙여 0이 아닌칸을 출력하는 문제이다. 주의사항 2차원 배열을 회전할 때 회전방향은 시계 방향부터 해야한다. 그렇지 않는다면 다르게 칸에 끼워져 정답이랑 값이 멀어지기 때문이다. 풀이 static int autoIncrement = 1; private static int[][] grid; private static int n; private static int m; static class Shape { int idx = autoIncrement++; int n, m; int map[][]; public Shape(int n, int m, int[][] map) { this.n = n; this.m = m; this.map = map; } /** * 주의 : 9.. Algorithm/백준 2023. 3. 23. 백준 - 트리의 기둥과 가지 문제 설명 트리의 기둥의 길이와 기가 노드로부터 뻗어있는 가장 멀리 뻗어 있는 가지의 길이를 구하는 문제이다. 주의사항 트리의 기둥부터 기가노드 까지의 판별은 보통 나가는 간선의 개수가 3개 이상일 때 기가노드로 판단할 것이다. 하지만 예외 상황이 있다. 루트에서 기가노드의 길이가 0일 때이다. 1번이 루트라고 주어진다면, 1→2(1), 1→3(1) 으로 갈경우 그러면 기둥의 길이는 2가 되고 가지의 길이는 0이될 것이다. 정답 기둥의 길이가 0이고 가지의 길이가 0이 되어야 한다. 생각한 아이디어 DFS 풀이 private static int root; static class Node { private int v, edge; public Node(int v, int edge) { this.v = v; .. Algorithm/백준 2023. 3. 21. 이전 1 2 3 4 5 6 7 8 9 다음