티스토리 뷰
출저 : https://www.acmicpc.net/problem/16116
"문제를 단순화 해보자..."
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { static char[][] map = new char[8][3]; static int[][] d1 = {{0,1},{1,2},{2,0}}; static int[][] d2 = {{0,2},{1,0},{2,1}}; static boolean ok = true; public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); for (int i = 0; i < 8; i++) { StringTokenizer st = new StringTokenizer(br.readLine()); for (int j = 0; j < 3; j++) { map[i][j] = st.nextToken().charAt(0); } } for (int i = 0; i < 8; i++) { for (int j = 0; j < 3; j++) { char a = map[i][d1[j][0]]; char b = map[i][d1[j][1]]; if(solve(a,b,i) != 1) ok = false; } if(!ok) break; } System.out.println(ok ? "YES" : "NO"); } static int solve(char a, char b, int idx) { int cnt = 0; for (int i = 0; i < 8; i++) { if(i == idx) continue; for (int j = 0; j < 3; j++) { char na = map[i][d2[j][0]]; char nb = map[i][d2[j][1]]; if(a == na && b == nb) { cnt++; } } } return cnt; } } | cs |
'Study > 알고리즘 문제풀이' 카테고리의 다른 글
백준 2580. 스도쿠 :: 돼지개발자 (0) | 2018.12.17 |
---|---|
백준 2501. 약수 구하기 :: 돼지개발자 (1) | 2018.12.14 |
백준 2206. 벽 부수고 이동하기 :: 돼지개발자 (0) | 2018.12.12 |
백준 1325. 효율적인 해킹 :: 돼지개발자 (1) | 2018.12.12 |
백준 1963. 소수 경로 :: 돼지개발자 (0) | 2018.12.11 |
댓글
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday