Pagini recente » Cod sursa (job #1251907) | Cod sursa (job #900402) | Cod sursa (job #1894523) | Istoria paginii runda/oni2014_ziua1/clasament | Cod sursa (job #3205711)
#include <bits/stdc++.h>
using namespace std;
ifstream fin( "tablete.in" );
ofstream fout( "tablete.out" );
const int DIM = 1e3 + 5;
int t[DIM][DIM];
int main() {
int n, k, idx = 0;
fin >> n >> k;
if ( n % 2 == 0 ) {
if ( k & 1 ) {
idx = n;
for ( int i = 1; i <= n; ++i ) {
for ( int j = 1; j <= n; ++j ) {
if ( j == 1 ) {
t[i][j] = i;
continue;
}
if ( j == n ) {
t[i][j] = n * (n - 1) + i;
continue;
}
t[i][j] = ++idx;
}
}
} else {
for ( int i = 1; i <= n; ++i ) {
for ( int j = 1; j <= n; ++j ) {
t[i][j] = ++idx;
}
}
}
} else {
if ( k & 1 ) {
for ( int i = 1; i <= n; ++i ) {
for ( int j = 1; j <= n; ++j ) {
t[i][j] = ++idx;
}
}
for ( int i = 2; i <= n; i += 2 ) {
int aux = t[i][n];
for ( int j = n; j >= 2; --j ) {
t[i][j] = t[i][j - 1];
}
t[i][1] = t[i - 1][n];
t[i - 1][n] = aux;
}
} else {
idx = n;
for ( int i = 1; i <= n; ++i ) {
for ( int j = 1; j <= n; ++j ) {
if ( j == 1 ) {
t[i][j] = i;
continue;
}
t[i][j] = ++idx;
}
}
}
}
for ( int i = 1; i <= n; ++i ) {
for ( int j = 1; j <= n; ++j ) {
fout << t[i][j] << " ";
}
fout << "\n";
}
fin.close();
fout.close();
return 0;
}