์Šคํ† ์ฟ  ๊ฒ€์‚ฌ

๐Ÿ“„ ๋ฌธ์ œ

์Šค๋„์ฟ ๋Š” ๋งค์šฐ ๊ฐ„๋‹จํ•œ ์ˆซ์ž ํผ์ฆ์ด๋‹ค.
9ร—9 ํฌ๊ธฐ์˜ ๋ณด๋“œ๊ฐ€ ์žˆ์„ ๋•Œ, ๊ฐ ํ–‰๊ณผ ๊ฐ ์—ด,
๊ทธ๋ฆฌ๊ณ  9 ๊ฐœ์˜ 3ร—3 ํฌ๊ธฐ์˜ ๋ณด๋“œ์— 1๋ถ€ํ„ฐ 9๊นŒ์ง€์˜ ์ˆซ์ž๊ฐ€ ์ค‘๋ณต ์—†์ด ๋‚˜ํƒ€๋‚˜๋„๋ก ๋ณด๋“œ๋ฅผ ์ฑ„์šฐ๋ฉด ๋œ๋‹ค.
์˜ˆ๋ฅผ ๋“ค์–ด ๋‹ค์Œ์„ ๋ณด์ž.


์œ„ ๊ทธ๋ฆผ์€ ์Šค๋„์ฟ ๋ฅผ ์ •ํ™•ํ•˜๊ฒŒ ํ‘ผ ๊ฒฝ์šฐ์ด๋‹ค.
๊ฐ ํ–‰์— 1๋ถ€ํ„ฐ 9๊นŒ์ง€์˜ ์ˆซ์ž๊ฐ€ ์ค‘๋ณต ์—†์ด ๋‚˜์˜ค๊ณ ,
๊ฐ ์—ด์— 1๋ถ€ํ„ฐ 9๊นŒ์ง€์˜ ์ˆซ์ž๊ฐ€ ์ค‘๋ณต ์—†์ด ๋‚˜์˜ค๊ณ ,
๊ฐ 3ร—3์งœ๋ฆฌ ์‚ฌ๊ฐํ˜•(9๊ฐœ์ด๋ฉฐ, ์œ„์—์„œ ์ƒ‰ ๊น”๋กœ ํ‘œ์‹œ๋˜์—ˆ๋‹ค)์— 1๋ถ€ํ„ฐ 9๊นŒ์ง€์˜ ์ˆซ์ž๊ฐ€ ์ค‘๋ณต ์—†์ด ๋‚˜์˜ค๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

์™„์„ฑ๋œ 9ร—9 ํฌ๊ธฐ์˜ ์ˆ˜๋„์ฟ ๊ฐ€ ์ฃผ์–ด์ง€๋ฉด ์ •ํ™•ํ•˜๊ฒŒ ํ’€์—ˆ์œผ๋ฉด โ€œYES",
์ž˜๋ชป ํ’€์—ˆ์œผ๋ฉด โ€NO"๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์„ธ์š”.

โ–ฃ ์ž…๋ ฅ์„ค๋ช…
์ฒซ ๋ฒˆ์งธ ์ค„์— ์™„์„ฑ๋œ 9ร—9 ์Šค๋„์ฟ ๊ฐ€ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค.

โ–ฃ ์ถœ๋ ฅ์„ค๋ช…
์ฒซ์งธ ์ค„์— โ€œYES" ๋˜๋Š” โ€NO"๋ฅผ ์ถœ๋ ฅํ•˜์„ธ์š”.

โ–ฃ ์ž…๋ ฅ์˜ˆ์ œ
1 4 3 6 2 8 5 7 9
5 7 2 1 3 9 4 6 8
9 8 6 7 5 4 2 3 1
3 9 1 5 4 2 7 8 6
4 6 8 9 1 7 3 5 2
7 2 5 8 6 3 9 1 4
2 3 7 4 8 1 6 9 5
6 1 9 2 7 5 8 4 3
8 5 4 3 9 6 1 2 7

โ–ฃ ์ถœ๋ ฅ์˜ˆ์ œ
YES

๐Ÿงž ํ’€์ด (์‹คํŒจ: 45 ํ•ฉ์„ ๊ธฐ์ค€์œผ๋กœ ํ–ˆ๋Š”๋ฐ ๋ฐ˜๋ก€ ์กด์žฌ)

๋”๋ณด๊ธฐ
# ์‹คํŒจ
# 45 ํ•ฉ์„ ๊ธฐ์ค€์œผ๋กœ ๋งŒ๋“  ์ˆ˜๋„์ฟ 
# ๊ฐ’์ด ์ค‘๋ณต๋˜๋”๋ผ๋„ ํ•ฉ์ด 45๊ฐ€ ๋˜๋Š” ๋ฐ˜๋ก€๊ฐ€ ์กด์žฌํ•จ

'''
๊ฐ ์‚ฌ๊ฐํ˜•์˜ ํ•ฉ

a[0][0] a[0][1] a[0][2]
a[1][0] a[1][1] a[1][2]
a[2][0] a[2][1] a[2][2]

a[0][3] a[0][4] a[0][5]
a[1][3] a[1][4] a[1][5]
a[2][3] a[2][4] a[2][5]

a[0][6] a[0][7] a[0][8]
a[1][6] a[1][7] a[1][8]
a[2][6] a[2][7] a[2][8]

a[3][0] a[3][1] a[3][2]
a[4][0] a[4][1] a[4][2]
a[5][0] a[5][1] a[5][2]

a[3][3] a[3][4] a[3][5]
a[4][3] a[4][4] a[4][5]
a[5][3] a[5][4] a[5][5]

a[3][6] a[3][7] a[3][8]
a[4][6] a[4][7] a[4][8]
a[5][6] a[5][7] a[5][8]

a[6][0] a[6][1] a[6][2]
a[7][0] a[7][1] a[7][2]
a[8][0] a[8][1] a[8][2]

a[6][3] a[6][4] a[6][5]
a[7][3] a[7][4] a[7][5]
a[8][3] a[8][4] a[8][5]

a[6][6] a[6][7] a[6][8]
a[7][6] a[7][7] a[7][8]
a[8][6] a[8][7] a[8][8]

3๊ฐœ * 3๊ฐœ ๋งŒํผ ์ด์ค‘๋ฐ˜๋ณตํ•˜๋ฉด ๋  ๋“ฏ!

'''

sudoku = [list(map(int, input().split())) for _ in range(9)]

cnt1 = 0
cnt2 = 0
cnt3 = 0

for i in range(9):
    print(sum(sudoku[i]))
    if sum(sudoku[i]) == 45:
        cnt1 = 0
    else:
        cnt1 = 1

    tmp = 0
    for j in range(9):
        tmp += sudoku[j][i]
    print(tmp)
    if tmp == 45:
        cnt2 = 0
    else:
        cnt2 = 1

for l1 in range(3):
    for l2 in range(3):
        tmp2 = 0
        tmp2 += sudoku[l1 * 3][l2 * 3]
        tmp2 += sudoku[l1 * 3][l2 * 3 + 1]
        tmp2 += sudoku[l1 * 3][l2 * 3 + 2]
        tmp2 += sudoku[l1 * 3 + 1][l2 * 3]
        tmp2 += sudoku[l1 * 3 + 1][l2 * 3 + 1]
        tmp2 += sudoku[l1 * 3 + 1][l2 * 3 + 2]
        tmp2 += sudoku[l1 * 3 + 2][l2 * 3]
        tmp2 += sudoku[l1 * 3 + 2][l2 * 3 + 1]
        tmp2 += sudoku[l1 * 3 + 2][l2 * 3 + 2]
        print(tmp2)
        if tmp2 == 45:
            cnt3 = 0
        else:
            cnt3 = 1

if cnt1 == 1 or cnt2 == 1 or cnt3 == 1:
    print('NO')
else:
    print('YES')

 

๋‹ค๋ฅธ ์‚ฌ๋žŒ ํ’€์ด

# ํ–‰์„ ์ฒดํฌํ•˜๋Š” ๋ฆฌ์ŠคํŠธ
# ์—ด์„ ์ฒดํฌํ•˜๋Š” ๋ฆฌ์ŠคํŠธ
# ๊ทธ๋ฃน์„ ์ฒดํฌํ•˜๋Š” ๋ฆฌ์ŠคํŠธ๋ฅผ ๋งŒ๋“ค์–ด์„œ ํ™•์ธ

'''
ch = [0] * 10
ch1 ํ–‰
ch2 ์–„
ch3 ๊ทธ๋ฃน
ch[a[i][j]] = 1
sum(ch) != 9
์ž˜๋ชป๋œ ์Šคํ† ์ฟ ์ž„
'''

def check(tmp):
    for i in range(9):
        ch1 = [0] * 10
        ch2 = [0] * 10
        for j in range(9):
            ch1[a[i][j]] = 1
            ch2[a[j][i]] = 1
        if sum(ch1) != 9 or sum(ch2) != 9:
            return False
    for i in range(3):
        for j in range(3):
            ch3 = [0] * 10
            for k in range(3):
                for s in range(3):
                    ch3[a[i*3 + k][j*3 + s]] = 1
            if sum(ch3) != 9:
                return False
    return True

a = [list(map(int, input().split())) for _ in range(9)]

if check(a):
    print('YES')
else:
    print('NO')

 

 

+ Recent posts