알고리즘

[이코테/구현/C++] 왕실의 나이트

데메즈 2023. 1. 6. 22:45
728x90
반응형

 

#include <bits/stdc++.h>

using namespace std;

char col[] = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h'};
int dx[] = {2, 2, -2, -2, 1, 1, -1, -1};
int dy[] = {1, -1, 1, -1, 2, -2, 2, -2};

bool check(int x, int y) {
    if (x >= 1 && x <= 8 && y >= 1 && y <= 8)
        return true;
    else return false;
}

int main(void) {
    ios::sync_with_stdio(0);
    cin.tie(0);

    string str;
    cin >> str;

    int x;
    int y = str[1] - '0';
    for (int i = 0; i < 8; i++) {
        if (str[0] == col[i]) {
            x = i + 1;
            break;
        }
    }

    int result = 0;
    for (int i = 0; i < 8; i++) {
        if (check(x + dx[i], y + dy[i]))
            result++;
    }
    cout << result;

    return 0;
}
728x90
반응형