Pagini recente » Monitorul de evaluare | Diferente pentru utilizator/probatman intre reviziile 15 si 12 | Borderou de evaluare (job #3332113) | Cod sursa (job #1071914) | Cod sursa (job #3338395)
#include <iostream>
#include <fstream>
#include <algorithm>
#include <vector>
using namespace std;
ifstream fin("lacate.in");
ofstream fout("lacate.out");
const int MAXN = 258;
int A[MAXN][MAXN];
int N;
int main()
{
fin >> N;
fout << N * (N - 1) / 2 << ' ' << N - 1 << '\n';
int start = 1;
for (int i = 1; i < N; ++i) {
for (int j = i; j < N; ++j) {
A[i][j] = A[j + 1][i] = start + j - i;
}
start += N - i;
}
for (int i = 1; i <= N; ++i) {
for (int j = 1; j <= N - 1; ++j) {
fout << A[i][j] << ' ';
}
fout << '\n';
}
return 0;
}