[이것이 코딩 테스트다] 왕실의 나이트

고재욱·2021년 9월 16일
0

❓ 문제 ❓
나이트가 움직일 수 있는 위치의 개수를 파악해라!

💯 문제 풀이💯
간단한 구현문제!
상하좌우 방향 배열과 맵 안에 위치하도록 조건문을 잘 짜자!

#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;
}

0개의 댓글