Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

C++: Kiểm tra ma trận 3x3 đối xứng tâm

Bài toán: Ma trận 3x3 chứa 'X' và '.'. Kiểm tra đối xứng tâm (central symmetry): xoay 180° giống hệt.

Điều kiện: M[0][0]==M[2][2], M[0][1]==M[2][1], M[0][2]==M[2][0], M[1][0]==M[1][2]. Ô giữa M[1][1] luôn đối xứng với chính nó.

Code C++

#include <bits/stdc++.h>
using namespace std;

bool solve(vector<vector<char>> M) {
    return M[0][0] == M[2][2] &&
           M[0][1] == M[2][1] &&
           M[0][2] == M[2][0] &&
           M[1][0] == M[1][2];
}

int main() {
    vector<vector<char>> M = {{'X','X','.'}, {'.','.','.'}, {'.','X','X'}};
    cout << solve(M) << endl; // 1 (true)
    return 0;
}

Kết quả

1