41 lines
1.2 KiB
Markdown
41 lines
1.2 KiB
Markdown
|
# Queen Attack
|
||
|
|
||
|
Write a program that positions two queens on a chess board and indicates whether or not they are positioned so that they can attack each other.
|
||
|
|
||
|
In the game of chess, a queen can attack pieces which are on the same
|
||
|
row, column, or diagonal.
|
||
|
|
||
|
A chessboard can be represented by an 8 by 8 array.
|
||
|
|
||
|
So if you're told the white queen is at (2, 3) and the black queen at
|
||
|
(5, 6), then you'd know you've got a set-up like so:
|
||
|
|
||
|
```plain
|
||
|
_ _ _ _ _ _ _ _
|
||
|
_ _ _ _ _ _ _ _
|
||
|
_ _ _ W _ _ _ _
|
||
|
_ _ _ _ _ _ _ _
|
||
|
_ _ _ _ _ _ _ _
|
||
|
_ _ _ _ _ _ B _
|
||
|
_ _ _ _ _ _ _ _
|
||
|
_ _ _ _ _ _ _ _
|
||
|
```
|
||
|
|
||
|
You'd also be able to answer whether the queens can attack each other.
|
||
|
In this case, that answer would be yes, they can, because both pieces
|
||
|
share a diagonal.
|
||
|
|
||
|
To run the tests simply run the command `go test` in the exercise directory.
|
||
|
|
||
|
If the test suite contains benchmarks, you can run these with the `-bench`
|
||
|
flag:
|
||
|
|
||
|
go test -bench .
|
||
|
|
||
|
For more detailed info about the Go track see the [help
|
||
|
page](http://help.exercism.io/getting-started-with-go.html).
|
||
|
|
||
|
## Source
|
||
|
|
||
|
J Dalbey's Programming Practice problems [view source](http://users.csc.calpoly.edu/~jdalbey/103/Projects/ProgrammingPractice.html)
|