Cod sursa(job #322687)

Utilizator freak93Adrian Budau freak93 Data 9 iunie 2009 17:13:21
Problema Lacate Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.97 kb
#include<fstream>
#define maxn 257

using namespace std;

ifstream f("lacate.in");
ofstream g("lacate.out");

int a[maxn][maxn],i,j,k,n,p;

int main()
{
    f>>n;

    if(n&1)
    {
        p=n*(n-1)/2;

        for(i=1;i<=n/2;++i)
            for(j=1;j<n;++j)
                a[i][j]=++k;

        for(i=1;i<=n/2;++i)
            a[n/2+1][i]=++k;

        k=0;

        for(i=n/2+1;i<n;++i)
            a[n/2+1][i]=++k;

        for(j=1;j<n;++j)
            for(i=n/2+2;i<=n;++i)
                a[i][j]=++k;

    }
    else
    {
        p=n*(n-1)/2;

        for(i=1;i<=n/2;++i)
            for(j=1;j<n;++j)
                a[i][j]=++k;

        k=0;

        for(j=1;j<n;++j)
            for(i=n/2+1;i<=n;++i)
                a[i][j]=++k;
    }

    g<<p<<" "<<n-1<<"\n";

    for(i=1;i<=n;++i)
    {
        for(j=1;j<n;++j)
            g<<a[i][j]<<" ";
        g<<"\n";
    }

    f.close();
    g.close();

    return 0;
}