codepad
[
create a new paste
]
login
|
about
Language:
C
C++
D
Haskell
Lua
OCaml
PHP
Perl
Plain Text
Python
Ruby
Scheme
Tcl
#include <iostream> using namespace std; bool isValidHorseMove(const char * m) // "A1-B3" { return 0 == (0xfffffb & ((m[0]-m[3])*(m[1]-m[4])+2)); } int main() { // ABCDEFGH // 1........ // 2..x.x... // 3.x...x.. // 4...O.... // 5.x...x.. // 6..x.x... // 7........ // 8........ cout << "True: "; cout << isValidHorseMove("D4-B3"); cout << isValidHorseMove("D4-C2"); cout << isValidHorseMove("D4-E2"); cout << isValidHorseMove("D4-F3"); cout << isValidHorseMove("D4-F5"); cout << isValidHorseMove("D4-E6"); cout << isValidHorseMove("D4-C6"); cout << isValidHorseMove("D4-B5"); cout << endl; // ABCDEFGH // 1........ // 2.x.x.x.. // 3..xxx... // 4.xxOxx.. // 5..xxx... // 6.x.x.x.. // 7........ // 8........ cout << "False: "; cout << isValidHorseMove("D4-B2"); cout << isValidHorseMove("D4-D2"); cout << isValidHorseMove("D4-F2"); cout << isValidHorseMove("D4-C3"); cout << isValidHorseMove("D4-D3"); cout << isValidHorseMove("D4-E3"); cout << isValidHorseMove("D4-B4"); cout << isValidHorseMove("D4-C4"); cout << isValidHorseMove("D4-E4"); cout << isValidHorseMove("D4-F4"); cout << isValidHorseMove("D4-C5"); cout << isValidHorseMove("D4-D5"); cout << isValidHorseMove("D4-E5"); cout << isValidHorseMove("D4-B6"); cout << isValidHorseMove("D4-D6"); cout << isValidHorseMove("D4-F6"); cout << endl; int count = 0; for (int i = 0; i < 8; i++) for (int j = 0; j < 8; j++) { char str[] = "D4-A1"; str[3] += i; str[4] += j; if (isValidHorseMove(str)) count++; } cout << "8: " << count << endl; }
Private
[
?
]
Run code
Submit