Problem Statement
A 8x8 chessboard is usually marked as follows: rows are marked by digits, 1 through 8, and columns are marked by letters, 'a' through 'h'. A cell is described by its column mark and then its row mark, like "e4".

While working on a chess program, you need to convert these descriptions into your internal cell numbers and back. Internally, cells are numbered row-by-row from 1 to 64 in your program, i.e., cell "a1" has number 1, cell "b1" has number 2, cell "c1" has number 3, ..., cell "h8" has number 64.

Given a String cell, describing either the cell mark or the cell number, change the notation (i.e., if you're given the mark you need to return the number, and vice versa).
Definition
- Class:
- Chessboard
- Method:
- changeNotation
- Parameters:
- String
- Returns:
- String
- Method signature:
- String changeNotation(String cell)
- (be sure your method is public)
Constraints
- cell will contain either a cell mark or a cell number.
- If cell contains a cell mark, it will contain exactly 2 characters: a lowercase letter between 'a' and 'h', inclusive, followed by a digit between '1' and '8', inclusive.
- If cell contains a cell number, it will be an integer between 1 and 64, inclusive, without leading zeros.
Examples
"1"
Returns: "a1"
"2"
Returns: "b1"
"3"
Returns: "c1"
"4"
Returns: "d1"
"5"
Returns: "e1"
"6"
Returns: "f1"
"7"
Returns: "g1"
"8"
Returns: "h1"
"9"
Returns: "a2"
"10"
Returns: "b2"
"11"
Returns: "c2"
"12"
Returns: "d2"
"13"
Returns: "e2"
"14"
Returns: "f2"
"15"
Returns: "g2"
"16"
Returns: "h2"
"17"
Returns: "a3"
"18"
Returns: "b3"
"19"
Returns: "c3"
"20"
Returns: "d3"
"21"
Returns: "e3"
"22"
Returns: "f3"
"23"
Returns: "g3"
"24"
Returns: "h3"
"25"
Returns: "a4"
"26"
Returns: "b4"
"27"
Returns: "c4"
"28"
Returns: "d4"
"29"
Returns: "e4"
"30"
Returns: "f4"
"31"
Returns: "g4"
"32"
Returns: "h4"
"33"
Returns: "a5"
"34"
Returns: "b5"
"35"
Returns: "c5"
"36"
Returns: "d5"
"37"
Returns: "e5"
"38"
Returns: "f5"
"39"
Returns: "g5"
"40"
Returns: "h5"
"41"
Returns: "a6"
"42"
Returns: "b6"
"43"
Returns: "c6"
"44"
Returns: "d6"
"45"
Returns: "e6"
"46"
Returns: "f6"
"47"
Returns: "g6"
"48"
Returns: "h6"
"49"
Returns: "a7"
"50"
Returns: "b7"
"51"
Returns: "c7"
"52"
Returns: "d7"
"53"
Returns: "e7"
"54"
Returns: "f7"
"55"
Returns: "g7"
"56"
Returns: "h7"
"57"
Returns: "a8"
"58"
Returns: "b8"
"59"
Returns: "c8"
"60"
Returns: "d8"
"61"
Returns: "e8"
"62"
Returns: "f8"
"63"
Returns: "g8"
"64"
Returns: "h8"
"a1"
Returns: "1"
"b1"
Returns: "2"
"c1"
Returns: "3"
"d1"
Returns: "4"
"e1"
Returns: "5"
"f1"
Returns: "6"
"g1"
Returns: "7"
"h1"
Returns: "8"
"a2"
Returns: "9"
"b2"
Returns: "10"
"c2"
Returns: "11"
"d2"
Returns: "12"
"e2"
Returns: "13"
"f2"
Returns: "14"
"g2"
Returns: "15"
"h2"
Returns: "16"
"a3"
Returns: "17"
"b3"
Returns: "18"
"c3"
Returns: "19"
"d3"
Returns: "20"
"e3"
Returns: "21"
"f3"
Returns: "22"
"g3"
Returns: "23"
"h3"
Returns: "24"
"a4"
Returns: "25"
"b4"
Returns: "26"
"c4"
Returns: "27"
"d4"
Returns: "28"
"e4"
Returns: "29"
"f4"
Returns: "30"
"g4"
Returns: "31"
"h4"
Returns: "32"
"a5"
Returns: "33"
"b5"
Returns: "34"
"c5"
Returns: "35"
"d5"
Returns: "36"
"e5"
Returns: "37"
"f5"
Returns: "38"
"g5"
Returns: "39"
"h5"
Returns: "40"
"a6"
Returns: "41"
"b6"
Returns: "42"
"c6"
Returns: "43"
"d6"
Returns: "44"
"e6"
Returns: "45"
"f6"
Returns: "46"
"g6"
Returns: "47"
"h6"
Returns: "48"
"a7"
Returns: "49"
"b7"
Returns: "50"
"c7"
Returns: "51"
"d7"
Returns: "52"
"e7"
Returns: "53"
"f7"
Returns: "54"
"g7"
Returns: "55"
"h7"
Returns: "56"
"a8"
Returns: "57"
"b8"
Returns: "58"
"c8"
Returns: "59"
"d8"
Returns: "60"
"e8"
Returns: "61"
"f8"
Returns: "62"
"g8"
Returns: "63"
"h8"
Returns: "64"
"64"
Returns: "h8"
"8"
Returns: "h1"
"40"
Returns: "h5"
"12"
Returns: "d2"
"10"
Returns: "b2"
"16"
Returns: "h2"
"29"
Returns: "e4"
"24"
Returns: "h3"
"9"
Returns: "a2"
"h7"
Returns: "56"
"2"
Returns: "b1"
"1"
Returns: "a1"
"46"
Returns: "f6"
"c5"
Returns: "35"
"a2"
Returns: "9"
"3"
Returns: "c1"
"60"
Returns: "d8"
"56"
Returns: "h7"
"25"
Returns: "a4"
"b4"
Returns: "26"
"45"
Returns: "e6"
"h8"
Returns: "64"