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:
Rectangle Painting 2
International Olympiad
Second best Minimum Spanning Tree - Using Kruskal and Lowest Common Ancestor
Circle-Circle Intersection
Check if two segments intersect
Cut the pie
Lowest Common Ancestor - Farach-Colton and Bender Algorithm
Rectangles and Square
Party
Prefix Enlightenment
Elementary
New Year and Cleaning
Tricky Interactor
Magical Boxes
Ehab's Last Theorem
Chaotic V.
The Evil Temple and the Moving Rocks
Amity Assessment
Metro
Crazy Diamond
Square Table
Train Tracks
Noise Level
Nastya and Scoreboard
Prefix-Suffix Palindrome (Hard version)
Black and White Tree
Graph Coloring
Fibonacci Numbers
Felicity's Big Secret Revealed
Pudding Monsters
Startup Funding
Hidden Bipartite Graph