Cod sursa(job #2001532)

Utilizator vladschillerVlad Radu Schiller vladschiller Data 17 iulie 2017 00:01:23
Problema Tablete Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.41 kb
#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;
    if(kpar==0)
    {
        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++;
            }
    }
    else
    {
        for(int i=0; i<n; i+=2)
        {
            curs=0;
            for(int j=0; j<k-1; j++)
            {
                mat[j][i]=curs;
                curs++;
            }
            mat[k-1][i]=k+1;
        }
        for(int i=1; i<n; i+=2)
        {
            curs=k+2;
            for(int j=1; j<k; j++)
            {
                mat[j][i]=curs;
                curs++;
            }
            mat[0][i]=k;
        }
        for(int i=0; i<n; i++)
            for(int j=k; j<n; j++)
            {
                mat[j][i]=curs;
                curs++;
            }
    }
}

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++)
            g<<mat[j][i]<<' ';
        g<<'\n';
    }
    return 0;
}