Pagini recente » Cod sursa (job #856727) | Cod sursa (job #179083) | Cod sursa (job #2290486) | Cod sursa (job #377995) | Cod sursa (job #2581720)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("tablete.in");
ofstream g("tablete.out");
int n,k,aux[1005][5],trio[1005][5];
int main()
{
f>>n>>k;
aux[k][1]=2*(k-1);
aux[k][2]=2*k;
aux[k-1][1]=aux[k][1]-1; aux[k-2][1]=aux[k-1][1]-2;
aux[k-1][2]=aux[k][2]-1; aux[k-2][2]=aux[k-1][2]-3;
aux[k+1][1]=aux[k][1]+3; aux[k+2][1]=aux[k+1][1]+2;
aux[k+1][2]=aux[k][2]+2; aux[k+2][2]=aux[k+1][2]+2;
for(int i=k-3;i>=1;i--)
{
aux[i][1]=aux[i+1][1]-2;
aux[i][2]=aux[i+1][2]-2;
}
for(int i=k+3;i<=n;i++)
{
aux[i][1]=aux[i-1][1]+2;
aux[i][2]=aux[i-1][2]+2;
}
for(int i=1;i<=n;i++)
trio[i][1]=aux[i][1];
for(int i=1;i<=n;i++)
trio[i][2]=aux[i][2];
for(int i=1;i<=n;i++)
trio[i][3]=2*n+i;
swap(trio[k][3],trio[n][2]);
for(int i=k;i>1;i--)
swap(trio[i][3],trio[i-1][3]);
for(int i=1;i<=n;i+=2)
{
if(n-i!=2)
{
for(int j=1;j<=n;j++)
g<<aux[j][1]+(i-1)*n<<" ";
g<<'\n';
for(int j=1;j<=n;j++)
g<<aux[j][2]+(i-1)*n<<" ";
g<<'\n';
}
else
{
for(int j=1;j<=n;j++)
g<<trio[j][1]+(i-1)*n<<" ";
g<<'\n';
for(int j=1;j<=n;j++)
g<<trio[j][2]+(i-1)*n<<" ";
g<<'\n';
for(int j=1;j<=n;j++)
g<<trio[j][3]+(i-1)*n<<" ";
break;
}
}
}