❓ 문제 ❓
나이트가 움직일 수 있는 위치의 개수를 파악해라!
💯 문제 풀이💯
간단한 구현문제!
상하좌우 방향 배열과 맵 안에 위치하도록 조건문을 잘 짜자!
#include <iostream>
using namespace std;
int dirx[8] = { -1,1,2,2,1,-1,-2,-2 };
int diry[8] = { -2,-2,-1,1,2,2,1,-1 };
int main() {
string s;
cin >> s;
int y = s[1] - '1', x = s[0] - 'a';
int cnt = 0;
for (int i = 0; i < 8; i++) {
int movex = x + dirx[i];
int movey = y + diry[i];
if (movex >= 0 && movex < 8 && movey >= 0 && movey < 8)
cnt++;
}
cout << cnt;
}