Cod sursa(job #952332)

Utilizator edawrds94Eduard Socea edawrds94 Data 23 mai 2013 08:54:08
Problema Tablete Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.28 kb
#include<fstream>
using namespace std;
ifstream f("tablete.in"); ofstream g("tablete.out");
int  a[1001][1001];
int main()
{  int n, k, w=0;
    f>>n>>k;
    
    if(k%2==0)
        {
            for(register int i=1; i<=n; ++i)
                for(register int j=1; j<=k; ++j)
                    a[i][j]=++w;
            for(register int i=1; i<=n; ++i)
                for(register int j=k+1; j<=n; ++j)
                    a[i][j]=++w;
        }
        else
            {
                for(register int i=1; i<=n; ++i)
                    for(register int j=1; j<=k; ++j)
                        {
                         a[i][j]=++w;
                         if(a[i][k]%2)
                            {
                             a[i][k]++;
                             if(i+1<=n) {++i; j=1; a[i][j]=w; ++w;}
                                 else {a[1][k+1]=n*k; ++w;}
                            }
                        }  
                for(register int i=1; i<=n; ++i)
                    for(register int j=k+1; j<=n; ++j)
                        if(!a[i][j]) a[i][j]=++w;
            }
    for(register int i=1; i<=n; ++i)
        {for(register int j=1; j<=n; ++j)
            g<<a[i][j]<<' ';
         g<<'\n';
        }
    return 0; g.close();
}