Pagini recente » Cod sursa (job #58833) | Cod sursa (job #3293748) | Cod sursa (job #306326) | Cod sursa (job #1236205) | Cod sursa (job #1330726)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("tablete.in");
ofstream g("tablete.out");
const int NMax = 1001;
int v[NMax][NMax];
int el = 1;
void afisare(int n){
for(int i = 1; i <= n; i++){
for(int j = 1; j <= n; j++){
g << v[i][j] << " ";
}
g << "\n";
}
}
void par(int n, int k, int z){
for(int i = 1; i <= n; i += 2){
for(int j = 1; j <= z ; j++){
if(j != k - 1){
v[i][j] = el;
v[i + 1][j] = el + 1;
el += 2;
} else {
v[i][j] = el;
v[i + 1][j] = el + 2;
j++;
v[i][j] = el + 1;
v[i + 1][j] = el + 3;
el += 4;
}
}
}
}
int main()
{
int n,k;
f >> n >> k;
if(n % 2 == 0){
par(n,k,n);
} else {
par(n - 3,k,n);
for(int i = 1; i <= n; i++){
if(i != k - 1){
v[n - 2][i] = el;
v[n - 1][i] = el + 1;
v[n][i] = el + 2;
el += 3;
}
if(i == k - 1 && k % 2 == 0){
v[n - 2][i] = el;
v[n - 1][i] = el + 2;
v[n][i] = el + 4;
i++;
v[n - 2][i] = el + 1;
v[n - 1][i] = el + 3;
v[n][i] = el + 5;
el += 6;
}
if(i == k - 1 && k % 2 != 0){
v[n - 2][i] = el;
v[n - 1][i] = el + 1;
v[n][i] = el + 3;
i++;
v[n - 2][i] = el + 2;
v[n - 1][i] = el + 4;
v[n][i] = el + 6;
i++;
v[n - 2][i] = el + 5;
v[n - 1][i] = el + 7;
v[n][i] = el + 8;
el += 9;
}
}
}
afisare(n);
return 0;
}