Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -module(queens).
- -export([queens/1]).
- queens(0) ->
- [[]];
- queens(N) ->
- [ [Row | Columns] || Columns <- queens(N-1),
- Row <- [1,2,3,4,5,6,7,8] -- Columns, % -- returns the list difference
- safe(Row, Columns, 1) ].
- safe(_Row, [], _N) ->
- true;
- safe(Row, [Column|Columns], N) ->
- (Row /= Column + N) andalso (Row /= Column - N) andalso
- safe(Row, Columns, (N+1)).
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement