The only king stands on the standard chess board. You are given his position in format “cd”, where c is the column from ‘a’ to ‘h’ and d is the row from ‘1’ to ‘8’. Find the number of moves permitted for the king.
Check the king’s moves here https://en.wikipedia.org/wiki/King_(chess).
King moves from the position e4
Input
The only line contains the king’s position in the format “cd”, where ‘c’ is the column from ‘a’ to ‘h’ and ‘d’ is the row from ‘1’ to ‘8’.
Output
Print the only integer x — the number of moves permitted for the king.
Example
input
e4
output
8
Solution:
#include <bits/stdc++.h> using namespace std; int main() { char s[42]; scanf("%s", s); int x, y; if (s[0] == 'a' || s[0] == 'h') { x = 2; } else { x = 3; } if (s[1] == '1' || s[1] == '8') { y = 2; } else { y = 3; } printf("%d\n", x * y - 1); return 0; }
Related posts:
Run for beer
Boredom
Photo to Remember
Berland Federalization
New Year and the Acquaintance Estimation
Race
Distributed Join
Dijkstra on sparse graphs
Pattern
Competitive Programmer
To Hack or not to Hack
Pumping Stations
Party
Oh Sweet Beaverette
Exploration plan
Reposts
Largest Submatrix 3
Fish Weight
Powered Addition
Sum of Nestings
Monopole Magnets
Raffles
Felicity's Big Secret Revealed
Heavy-light decomposition
Bears and Juice
Strange Function
Salazar Slytherin's Locket
Number of divisors / sum of divisors
Wrong Answer on Test 233 (Easy Version)
Zip-line
Discrete Logarithm
Wise Men (Hard Version)