Pagini recente » Cod sursa (job #1162212) | Cod sursa (job #763797) | Cod sursa (job #2356479) | Cod sursa (job #3127024) | Cod sursa (job #2001538)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("tablete.in");
ofstream g("tablete.out");
int mat[1000][1000],n,k;
bool npar,kpar;
void proc(bool npar,bool kpar)
{
int curs=1;
for(int i=0; i<n; i++)
for(int j=0; j<k; j++)
{
mat[j][i]=curs;
curs++;
}
for(int i=0; i<n; i++)
for(int j=k; j<n; j++)
{
mat[j][i]=curs;
curs++;
}
if(kpar==1)
{
for(int i=0;i<n-int(npar);i+=2)
{
int aux=mat[k-1][i];
mat[k-1][i]=mat[0][i+1];
mat[0][i+1]=aux;
}
if(npar)
{
int aux=mat[k-1][n-1];
mat[k-1][n-1]=mat[k][0];
mat[k][0]=aux;
}
}
}
int main()
{
f>>n>>k;
npar=bool(n%2);
kpar=bool(k%2);
proc(npar,kpar);
for(int i=0; i<n; i++)
{
for(int j=0; j<n; j++)
cout<<mat[j][i]<<' ';
cout<<'\n';
}
return 0;
}