Submission #164621

#TimeUsernameProblemLanguageResultExecution timeMemory
164621_qVp_Prosjecni (COCI16_prosjecni)C++14
120 / 120
3 ms504 KiB
#include <bits/stdc++.h>

using namespace std;

const int md = 105;

int n;
int a[md][md];

int main() {
    ios_base::sync_with_stdio(0);
    cin >> n;
    if (n == 2) {
        cout << "-1";
        return 0;
    }
    if (n & 1) {
        for(int i = 1; i <= n; i++) {
            for(int j = 1; j <= n; j++)
                cout << (i - 1) * n + j << " ";
            cout << '\n';
        }
    } else {
        //0 1 2 3 4 -10
        int sum = (n - 1) * (n - 2) / 2;
        a[1][n] = 1;
        for(int i = 1; i < n; i++)
            a[1][i] = sum + i;
        int dist = a[1][n - 1];
        for(int i = 2; i < n; i++) {
            for(int j = 1; j <= n; j++)
                a[i][j] = a[i - 1][j] + dist;
        }
        for(int i = 1; i <= n; i++)
            a[n][i] = a[n - 1][i] * n - (a[1][i] * (n - 1) + dist * (n - 1) * (n - 2) / 2);
        for(int i = 1; i <= n; i++) {
            for(int j = 1; j <= n; j++)
                cout << a[i][j] << " ";
            cout << '\n';
        }
    }
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...