知识点:

复合类型:

二维数组。

当条件不符合的时候,可以使用break()跳出循环,节省时间。

#include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;
    int arr[n][n];
    bool flag = true;

    for (int i = 0; i < n; i++) {
        for (int j = 0; j < n; j++) {
            cin >> arr[i][j];
        }
    }

    for (int i = 1; i < n; i++) {
        for (int j = 0; j < i; j++) {
            if (arr[i][j] != 0) {
                flag = false;
                break;
            }
        }
        if (flag == false) {
            break;
        }
    }

    if (flag) {
        cout << "YES";
    } else {
        cout << "NO";
    }

    return 0;
}