blob: d372186aa08308d44febb5144b3ff60e5a8cc154 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
|
dfs←{⊃∇⍨⌿⌽(⊂⍺⍶⍵)⍪⍺⍹⍵}
atk←{∪∊(⊂⍵)+¯1 0 1×⊂⌽⍳⍴⍵}
subs←{(⊂⍵)⍪¨(⍳⍴⊃⍺)~atk ⍵}
accm←{⍺⍪((⍴⍵)=⍴⊃⍺)↑⊂⍵}
fmt←{(⊂⎕io+⍵=⌾⍳⍴⍵)⌷'∘⎕'}
queens←{fmt¨ 1↓(↓1 ⍵⍴0)accm dfs subs ⍬}
eightqueens←queens 8
⎕←'Number of solutions to 8 queens: ',⍕≢eightqueens
⎕←'First five:'
⎕←5↑eightqueens
|