Cod sursa(job #2316374)

Utilizator MoldovanAndrei1Moldovan Andrei MoldovanAndrei1 Data 11 ianuarie 2019 17:12:34
Problema Tablete Scor 50
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.16 kb
#include <bits/stdc++.h>
using namespace std;
int dp[1005][1005];
int main()
{
    freopen("tablete.in","r",stdin);
    freopen("tablete.out","w",stdout);
    int n,k;
    scanf("%d%d",&n,&k);
    int i,j;
    if(k%2==0)
    {
        int cnt=0;
        for(i=1;i<=n;i++)
            for(j=1;j<=k;j++)
            dp[i][j]=++cnt;
        for(i=1;i<=n;i++)
            for(j=k+1;j<=n;j++)dp[i][j]=++cnt;
        for(i=1;i<=n;i++)
        {
            for(j=1;j<=n;j++)
                printf("%d ",dp[i][j]);
                printf("\n");
        }
        return 0;
    }
    if(n%2==0)
    {
        int cnt=0;
        for(i=1;i<=n;i+=2)
        {
            ++cnt;
            int l=cnt;
            for(j=1;j<=k;j++)
            {
                dp[i][j]=++cnt;
            }
            dp[i+1][1]=l;
            for(j=2;j<=k;j++)
                dp[i+1][j]=++cnt;
        }
        for(i=1;i<=n;i++)
            for(j=k+1;j<=n;j++)dp[i][j]=++cnt;
for(i=1;i<=n;i++)
        {
            for(j=1;j<=n;j++)
                printf("%d ",dp[i][j]);
                printf("\n");
        }
        return 0;
    }
    return 0;
}