Code Signal: Intro=60/60
by 습관중독def sudoku(grid):
digit = {1,2,3,4,5,6,7,8,9}
sub = []
for i in range(len(grid)):
if sum(grid[i]) != 45:
return False
total = 0
x = []
y = []
for j in range(len(grid[0])):
total += grid[i][j]
x.append(grid[j][i])
y.append(grid[i][j])
#set(grid[0])==digit
if total != 45:
return False
if set(x) != digit or set(y) != digit:
return False
for k in range(0,9,3):
for l in range(0,9,3):
SUM = 0
z = []
for m in range(0,3):
for n in range(0,3):
SUM += grid[k+m][l+n]
z.append(grid[k+m][l+n])
if SUM != 45 or set(z) != digit:
return False
return True
x = 가로축 숫자 검사
y = 세로축 숫자 검사
z = subset 숫자 검사
'코드 파이트(Code Signal)' 카테고리의 다른 글
코드업 기초 100제 vs. 코드파이트 Intro 비교 후기 (0) | 2020.02.26 |
---|---|
Code Signal: Intro=59/60 (0) | 2020.02.24 |
Code Signal: Intro=58/60 (0) | 2020.02.24 |
Code Signal: Intro=57/60 (0) | 2020.02.23 |
Code Signal: Intro=56/60 (0) | 2020.02.23 |
블로그의 정보
습관을 애정한다
습관중독