출저 : https://www.acmicpc.net/problem/2234 "BFS 그리고 비트마스킹(필수는아님..)" 비트마스킹을 사용하지 않고도 0 ~ 15 까지의 숫자별로 가능한 방향을 이차원 배열로 정의해줘서 풀면됨... 하지만 아래 풀이는 비트마스킹 써씅ㅁ. solve1()을 통해 아래 두개의 답을 구할 수 있다. 1. BFS를 돈다.2. 1번 BFS를 돌면서 각 방의 size가 구해지므로 최대값을 비교해 구한다. 마지막 문제에 대한 답을 구하는게 관건인듯 하다. 나는 1,2 번을 구하면서 새로운 int[][] arr 을 정의해서 이곳에 0~ 방의 개수 까지 카운터를 마킹했다.(영역 나누기 처럼) 동시에 각 index마다 방의 크기를 ArrayList에 저장해두었다. 그 후에 새로 정의한 맵 a..
출저 : https://www.acmicpc.net/problem/14889 "비트마스크도 쓸수 있고, 그냥 DFS 로 짝지어서 할 수도 있고" 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.Arrays;import java.util.StringTokenizer; class Main { static int N; static int[][] map; static bo..
- Total
- Today
- Yesterday