Pagini recente » Cod sursa (job #1033784) | Cod sursa (job #2869137) | Cod sursa (job #2571764) | Cod sursa (job #2931145) | Cod sursa (job #2254197)
#include <fstream>
#include <iostream>
using namespace std;
ifstream fin ("tablete.in");
ofstream fout ("tablete.out");
int n, k, i, j, x, r, v[1010][1010];
int main () {
fin >> n >> k;
if (k % 2 == 0) {
if (n % 2 == 0) {
for (j = 1; j <= n; j += 2) {
x = 1 + (j - 1) * n;
v[1][j] = x;
for (i = 2; i <= n; ++i){
v[i][j] = v[i - 1][j] + 2;
}
v[1][j + 1] = x + 1;
for (i = 2; i <= n; ++i){
v[i][j + 1] = v[i - 1][j + 1] + 2;
}
}
} else {
for (j = 1; j < n; j += 2) {
x = 1 + (j - 1) * n;
v[1][j] = x;
for (i = 2; i <= n; ++i){
v[i][j] = v[i - 1][j] + 2;
}
v[1][j + 1] = x + 1;
for (i = 2; i <= n; ++i){
v[i][j + 1] = v[i - 1][j + 1] + 2;
}
}
x = n * n;
for (i = n; i > 0; --i) {
v[i][n] = x--;
}
}
for (i = 1; i <= n; ++i) {
for (j = 1; j <= n; ++j) {
fout << v[i][j] << ' ';
}
fout << "\n";
}
} else {
x = 1;
for (i = 1; i <= n; ++i) {
for (j = 1; j <= n; ++j) {
if (j == 1 && r != 0) {
fout << r << ' ';
r = 0;
continue;
} else {
if (i == n - 1 && j == n) {
if (n % 2 == 1 && k % 2 ==0) {
fout << n * (n - 1) + 1;
} else {
fout << n * n;
}
} else {
if (j == k) {
if (x % 2 == 0) {
fout << x << ' ';
} else {
fout << x + 1 << ' ';
r = x++;
}
} else {
fout << x << ' ';
}
x++;
}
}
}
fout << "\n";
}
}
return 0;
}