[SW1974] 스도쿠 검증
✏️ 𝗔𝗹𝗴𝗼𝗿𝗶𝘁𝗵𝗺/SW Expert Academy

[SW1974] 스도쿠 검증

 

 SW Expert Academy- 스도쿠 검증 

문제 링크

https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5Psz16AYEDFAUq&categoryId=AV5Psz16AYEDFAUq&categoryType=CODE&problemTitle=%EC%8A%A4%EB%8F%84%EC%BF%A0&orderBy=FIRST_REG_DATETIME&selectCodeLang=ALL&select-1=&pageSize=10&pageIndex=1&&&&&&&&& 

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com

 

문제 입력

더보기
10
7 3 6 4 2 9 5 8 1
5 8 9 1 6 7 3 2 4
2 1 4 5 8 3 6 9 7
8 4 7 9 3 6 1 5 2
1 5 3 8 4 2 9 7 6
9 6 2 7 5 1 8 4 3
4 2 1 3 9 8 7 6 5
3 9 5 6 7 4 2 1 8
6 7 8 2 1 5 4 3 9
7 3 6 4 8 9 2 5 1
8 5 2 7 3 1 6 9 4
9 1 4 5 6 2 7 3 8
4 9 7 2 5 6 8 1 3
5 6 3 1 8 7 9 4 2
2 8 1 9 4 3 5 6 7
6 7 5 3 2 4 1 8 9
1 4 9 6 7 8 3 2 5
3 2 8 1 9 5 4 7 6
2 4 6 7 5 3 1 9 8
7 5 8 1 9 4 2 3 6
3 9 1 2 6 8 7 5 4
5 8 2 3 4 6 9 7 1
1 6 3 9 7 2 4 8 5
9 7 4 8 1 5 6 2 3
4 2 7 5 8 1 3 6 9
6 3 5 4 2 9 8 1 7
8 1 9 6 3 7 5 4 2
8 4 5 2 9 6 1 3 7
1 3 6 7 5 8 4 9 2
9 7 2 1 3 4 6 5 8
2 9 7 4 6 3 8 5 1
4 6 1 5 8 2 9 7 3
5 8 3 9 7 1 2 4 6
3 2 8 6 4 5 7 1 9
7 1 4 3 2 9 6 8 5
6 5 9 8 1 7 3 2 4
4 5 7 1 6 3 8 2 9
6 3 9 8 2 7 5 4 1
7 9 3 4 8 5 1 6 2
1 8 2 5 4 9 6 3 7
8 6 1 7 9 2 3 5 4
5 2 4 6 3 1 7 9 8
3 7 6 9 1 4 2 8 5
2 4 5 3 7 8 9 1 6
9 1 8 2 5 6 4 7 3
1 5 2 3 8 6 9 4 7
4 8 3 2 7 9 1 5 6
7 6 9 1 5 4 8 2 3
2 1 8 6 4 7 5 3 9
6 9 7 5 3 8 2 1 4
5 3 4 9 1 2 6 7 8
9 7 1 4 6 5 3 8 2
8 2 5 7 9 3 4 6 1
3 4 6 8 2 1 7 9 5
1 5 8 6 7 2 3 4 9
7 2 9 3 4 8 5 1 6
6 3 4 5 1 9 7 2 8
8 9 2 1 2 5 6 7 4
3 7 6 8 9 4 2 5 1
5 4 1 7 3 6 8 9 3
2 8 7 9 6 1 4 3 5
4 1 5 2 8 3 9 6 7
9 6 3 4 5 7 1 8 2
1 2 4 9 3 6 7 8 5
7 8 6 2 4 5 3 9 1
3 9 5 1 7 8 2 4 6
5 1 9 4 6 2 8 7 3
4 6 7 8 9 3 5 1 2
8 3 2 5 1 7 9 6 4
9 7 3 6 5 4 1 2 8
6 5 8 7 2 1 4 3 9
2 4 1 3 8 9 6 5 7
5 9 3 8 4 1 7 6 2
2 1 8 7 6 3 4 9 5
7 6 4 9 2 5 1 3 8
4 3 6 5 9 2 8 1 7
1 8 5 4 3 7 9 2 6
9 2 7 1 8 6 5 4 3
3 4 1 6 5 8 2 7 9
6 5 9 2 7 4 3 8 1
8 7 2 3 1 9 6 5 4
7 1 4 5 8 9 2 3 6
8 5 2 3 6 4 7 1 9
3 6 9 1 7 2 8 5 4
2 3 1 9 4 6 5 7 8
6 8 5 7 3 2 9 4 1
9 4 7 8 1 5 3 6 2
1 7 8 6 9 3 4 2 5
4 2 3 1 5 8 6 9 7
5 9 6 4 2 7 1 8 3
#1 1
#2 0
#3 1
#4 0
#5 0
#6 1
#7 0
#8 1
#9 1
#10 0

 

문제 풀이

package sw.expert.academy;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.util.Scanner;


public class SW1974스도쿠검증 {

	// 총 합이 되는 숫자는 45이다.
	public static final int SUM = 45;


	public static void main(String[] args) throws FileNotFoundException {
		System.setIn(new FileInputStream("src/sw/expert/academy/input.txt"));
		Scanner sc = new Scanner(System.in);

		// T 입력
		int T = sc.nextInt();

		// test case
		for (int t = 0; t < T; t++) {
			int[][] map = new int[9][9];

			// 스도쿠 입력 받기
			for (int i = 0; i < 9; i++) {
				for (int j = 0; j < 9; j++)
					map[i][j] = sc.nextInt();
			}

			// 정답 확인
			int ans = 1;

			// 가로, 세로 확인
			for (int i = 0; i < 9; i++) {
				int sumH = 0;
				int sumV = 0;

				for (int j = 0; j < 9; j++) {
					sumH += map[i][j];
					sumV += map[j][i];
				}

				if ((sumH != SUM) || (sumV != SUM)) ans = 0;
			}

			// 정사각형 확인
			for (int i = 0; i < 9; i += 3) {

				for (int j = 0; j < 9; j += 3) {
					int sumS = 0;

					for (int k1 = 0; k1 < 3; k1++) {
						for (int k2 = 0; k2 < 3; k2++) {
							sumS += map[i + k1][j + k2];
						}
					}
					if (sumS != SUM) ans = 0;
				}
			}

			// 정답 확인
			System.out.printf("#%d %d\n", t + 1, ans);

		}

		sc.close();
	}
}

한번에 훑으면서 확인을 해도 된다.

가로/세로/정사각형으로 각 라인의 합이 45인지 확인하면 된다.

 

 

 

 

 

 

 

 

 

# SWEA 스도쿠 검증 java


 

728x90