Cod sursa(job #266207)

Utilizator wallyMocanu Valentin wally Data 25 februarie 2009 07:52:37
Problema Tablete Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.9 kb
#include<iostream.h>
#include<fstream.h>

{int n,i,j,k,a[100][100],x;
ifstream f("tablete.in");
ofstream g("tablete.out");
void main()
f>>n>>k;
if(k%2==0)
{
 x=1;
 for(i=1;i<=n;i++)
  for(j=1;j<=k;j++)
    a[i][j]=x++;
 for(i=1;i<=n;i++)
  for(j=k+1;j<=n;j++)
   a[i][j]=x++;
}
else
 if(k%2==1&&n%2==0)
 {
  x=1;
  for(i=1;i<=n;i=i+2)
   {for(j=1;j<=k-1;j++)
     a[i][j]=x++;
    a[i][k]=x+1;
    a[i+1][1]=x;
    x=x+2;
    for(j=2;j<=k;j++)
      a[i+1][j]=x++;
   }
  for(i=1;i<=n;i++)
   for(j=k+1;j<=n;j++)
    a[i][j]=x++;
 }

else
 if(k%2==1 && n%2==1)
 {
  x=(n-1)*k+1;
  for(j=1;j<=k-1;j++)
   a[n][j]=x++;
  x++;
  a[n][k]=x;
  x--;
  a[1][k+1]=x;x=x+2;
  for(j=k+2;j<=n;j++)
   a[1][j]=x++;
  for(i=2;i<=n;i++)
   for(j=k+1;j<=n;j++)
    a[i][j]=x++;
  }

for(i=1;i<=n;i++)
  {for (j=1;j<=n;j++)
     g<<a[i][j];
  g<<endl;}
f.close();
g.close();
}