Sudoku: Difference between revisions

37 bytes removed ,  2 years ago
m
Line 3,042:
len col[] 810
len box[] 810
globallen grid[] .82
#
func init . .
for ipos range 981
s$[]if =pos str_splitmod input9 "= "0
s$[] = str_split input " "
for j range 9
pos = len grid[]
dig = number s$[j]
grid[] &= dig
r = pos div 9
c = pos mod 9
b = r div 3 * 3 + c div 3
row[r * 10 + dig] = 1
col[c * 10 + dig] = 1
box[b * 10 + dig] = 1
.
dig = number s$[jpos mod 9]
grid[pos] &= dig
forr j= rangepos div 9
c = pos = lenmod grid[]9
b = r =div 3 * 3 + posc div 93
row[r * 10 + dig] = 1
col[c * 10 + dig] = 1
box[b * 10 + dig] = 1
.
grid[] &= 0
.
call init
2,083

edits