완전탐색
[코트드리/Java] 최적의 십자 모양 폭발
풀이🛫 import java.util.Scanner; public class Main { public static final int DIR_NUM = 4; public static final int MAX_N = 50; public static final int[] dx = new int[]{-1,0,1,0}; public static final int[] dy = new int[]{0,1,0,-1}; public static int n, ans; public static int[][] orgGrid = new int[MAX_N][MAX_N]; public static int[][] grid = new int[MAX_N][MAX_N]; public static int[][] temp = new int[M..
[코드트리/Java] 금 채굴하기
풀이🛫 import java.util.Scanner; public class Main { public static final int MAX_N = 20; public static final int MAX_M = 10; public static int n, m; public static int[][] grid = new int[MAX_N][MAX_N]; // 채굴에 들어가는 비용 public static int getArea(int k) { return k*k + (k+1)*(k+1); } // 주어진 k에 대해 채굴 가능한 금의 개수 public static int getNumOfGold(int x, int y, int k) { int numOfGold = 0; for (int i=0; i
[백준 파이썬] #14502. 연구소
풀기 전 생각해보기😮 벽을 세울 수 있는 곳 중에서 세곳을 선택하고 벽을 세운다 벽을 세운 후 바이러스가 확산되었을 때, 확산되지 않은 방의 개수를 확인한다 다른 세 곳에도 벽을 세울 수 있는 모든 경우에 대해 확인한다 확산되지 않은 방이 가장 큰 경우를 선택한다 바이러스의 확산을 확인하기 위해 BFS를 사용했다 deepcopy 방식을 이용해서 매 경우 마다 사용하는 arr를 초기화 시켜주었다 풀이🛫 # 완전 탐색, BFS from collections import deque # U,R,D,L dcol = [-1,0,1,0] drow = [0,1,0,-1] # BFS: 바이러스의 확산 def spread_virus(lst): global virus # 바이러스가 있는 방 정보 가져오기 queue = de..