exercism/c/queen-attack
2024-06-25 09:04:04 -04:00
..
.exercism C: completed Queen Attack (naive) 2024-06-16 11:49:53 -04:00
test-framework C: completed Queen Attack (naive) 2024-06-16 11:49:53 -04:00
HELP.md C: completed Queen Attack (naive) 2024-06-16 11:49:53 -04:00
makefile C: completed Queen Attack (naive) 2024-06-16 11:49:53 -04:00
queen_attack.c C: completed Queen Attack (naive) 2024-06-16 11:49:53 -04:00
queen_attack.h C: completed Queen Attack (naive) 2024-06-16 11:49:53 -04:00
README.md C: completed Queen Attack (naive) 2024-06-16 11:49:53 -04:00
test_queen_attack.c C: completed Queen Attack (naive) 2024-06-16 11:49:53 -04:00

Queen Attack

Welcome to Queen Attack on Exercism's C Track. If you need help running the tests or submitting your code, check out HELP.md.

Instructions

Given the position of two queens on a chess board, indicate 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 are told the white queen is at c5 (zero-indexed at column 2, row 3) and the black queen at f2 (zero-indexed at column 5, row 6), then you know that the set-up is like so:

  a b c d e f g h
8 _ _ _ _ _ _ _ _ 8
7 _ _ _ _ _ _ _ _ 7
6 _ _ _ _ _ _ _ _ 6
5 _ _ W _ _ _ _ _ 5
4 _ _ _ _ _ _ _ _ 4
3 _ _ _ _ _ _ _ _ 3
2 _ _ _ _ _ B _ _ 2
1 _ _ _ _ _ _ _ _ 1
  a b c d e f g h

You are also 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.

Source

Created by

  • @RealBarrettBrown

Contributed to by

  • @bcc32
  • @h-3-0
  • @patricksjackson
  • @QLaille
  • @ryanplusplus
  • @wolf99

Based on

J Dalbey's Programming Practice problems - https://users.csc.calpoly.edu/~jdalbey/103/Projects/ProgrammingPractice.html