https://swexpertacademy.com/main/main.do
SWEA 1974번
가로/세로/3*3으로 나눠서 풀었다.
3*3은 반복문마다 출력해보며 감을 잡았다.
외우는게 필요할 듯
import java.util.Scanner;
public class P1974 {
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int T = sc.nextInt();
for(int t=1; t<=T; t++){
int[][] a = new int[10][10];
for(int i=0; i<9; i++){
for(int j=0; j<9; j++){
a[i][j] = sc.nextInt();
}
}
boolean flag = true;
//가로
for(int i=0; i<9; i++){
int[] arr = new int[10];
for(int j=0; j<9; j++){
if(arr[a[i][j]]==0){
arr[a[i][j]] = 1;
} else {
flag = false;
break;
}
}
}
//세로
for(int i=0; i<9; i++){
int[] arr = new int[10];
for(int j=0; j<9; j++){
if(arr[a[j][i]]==0){
arr[a[j][i]] = 1;
} else {
flag = false;
break;
}
}
}
//3*3
for(int i=0; i<=6; i+=3){
for(int j=0; j<=6; j+=3){
int[] arr = new int[10];
for(int k=i; k<i+3; k++){
for(int g=j; g<j+3; g++){
if(arr[a[k][g]]==0){
arr[a[k][g]] = 1;
} else {
flag = false;
break;
}
}
}
}
}
if(flag) System.out.println("#"+t+" "+1);
else System.out.println("#"+t+" "+0);
}
}
}
'알고리즘 > SWEA' 카테고리의 다른 글
[SWEA] 2805. 농작물 수확하기 (0) | 2022.11.09 |
---|---|
[SWEA] 1244. [S/W 문제해결 응용] 2일차 - 최대 상금 (0) | 2022.11.09 |
[SWEA] 1961. 숫자 배열 회전 (0) | 2022.11.08 |
[SWEA] 1954. 달팽이 숫자 (0) | 2022.11.07 |
[SWEA] 1928. Base64 Decoder (0) | 2022.11.07 |