#include #include using namespace std; bool can_reach(char scol, int srow, char tcol, int trow) { if(scol == tcol) return srow != trow; if(scol > 'f') { srow += scol - 'f'; } if(tcol > 'f') { trow += tcol - 'f'; } if(srow == trow) return true; if(srow - trow == ((int)scol) - ((int)tcol)) return true; return false; } int main() { int srow, trow; char scol, tcol; scanf("%c%d %c%d", &scol, &srow, &tcol, &trow); int ct = 0; for(char col = 'a'; col < 'l'; col++) { for(int n = 1; n < 12; n++) { int height = 11 - abs(((int)col) - ((int)'f')); if(n > height) break; if(can_reach(scol, srow, col, n) && can_reach(col, n, tcol, trow)) ct += 1; } } printf("%d\n", ct); return 0; }