FLAG 이용
import java.util.Scanner;
/*
* 맵을 만들어주고
* */
public class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
char map [][] = new char[8][8];
for(int tc=1; tc<=10; tc++) {
int N = sc.nextInt();
// 입력받은 영문
for(int i =0; i<8; i++) {
String str = sc.next();
for(int j=0; j<8; j++) {
map[i][j] = str.charAt(j);
}
}
int cnt = 0;
// 회문길이를 통해 전체 검사 가로
for(int i =0; i<8; i++) {
for(int j= 0; j<8;j++) {
boolean flag = false; // 기본
for(int k=0; k<N/2; k++) {
// map 을 나가는지 확이 ㄴ
if((j+N-k-1)>=8 || (j+k)>=8) {
flag = true;
break;
}
// 만약 같지 않다면
if(map[i][j+k] != map[i][j+N-k-1]) {
flag = true;
}
}
if(!flag) {
cnt++;
}
}
}
// 세로
for(int i =0; i<8; i++) {
for(int j =0; j<8; j++) {
boolean flag = false;
for(int k=0; k<N/2; k++) {
// 범위 확인
if((j+N-k-1) >=8 || (j+k)>=8) {
flag = true;
break;
}
if(map[j+k][i] != map[j+N-k-1][i]) {
flag = true;
}
}
if(!flag) {
cnt++;
}
}
}
System.out.println("#" + tc + " " + cnt);
}
}
}
'알고리즘 > SwExpert recipe' 카테고리의 다른 글
[SWEA] 암호생성기 D3 (0) | 2021.03.01 |
---|---|
[SWEA] 원재의 메모리 복구 D3 (0) | 2021.03.01 |
[SWEA] 거듭제곱 [D3] (0) | 2021.02.24 |
[SWEA] 장애물 경주 난이도 [D3] (0) | 2021.02.24 |
[SWEA] 준환이의 운동관리 [D3] (0) | 2021.02.24 |