Cod sursa(job #2792790)

Utilizator BlaugranasEnal Gemaledin Blaugranas Data 2 noiembrie 2021 12:14:31
Problema Tablete Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.86 kb
#include <fstream>
using namespace std;
ifstream f("tablete.in");
ofstream g("tablete.out");
int i,j,nr,k,n,np,v[1012][1012];
char w[100020],cf[10];
int main()
{
    f>>n>>k;
    for(i=1;i<=n;++i)
        for(j=1;j<=k;++j) v[i][j]=++nr;
    for(i=1;i<=n;++i)
        for(j=k+1;j<=n;++j) v[i][j]=++nr;
    if(k&1)
    {
        for(i=2;i<=n;i+=2) swap(v[i][1],v[i-1][k]);
        if(n&1) swap(v[n][k],v[1][k+1]);
    }
    for(i=1;i<=n;++i,w[++np]='\n')
        for(j=1;j<=n;++j)
        {
            int jeg=0;
            while(v[i][j]) cf[++jeg]=char(v[i][j]%10+'0'),v[i][j]/=10;
            for(k=jeg;k;--k) w[++np]=cf[k];
            w[++np]=' ';
            if(np>=100000)
            {
                w[++np]=0;
                g<<(w+1);
                np=0;
            }
        }
    w[++np]=0;
    if(np) g<<(w+1);
    return 0;
}