Cod sursa(job #2404615)

Utilizator stefantagaTaga Stefan stefantaga Data 13 aprilie 2019 09:55:26
Problema Lacate Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.37 kb
#include <fstream>

using namespace std;
ifstream f("lacate.in");
ofstream g("lacate.out");
int sol[300][300],fr[70005],n,nrl,i,j,poz;
int main()
{
    f>>n;
    g<<(n*(n-1))/2<<" "<<n-1<<'\n';
    sol[1][1]=1;
    nrl=(n*(n-1))/2;
    for (i=1;i<=n-1;i++)
    {
        if (i==1)
        {
            for (j=2;j<=n-1;j++)
            {
                sol[i][j]=(sol[i][j-1]+1)%nrl;
                if (sol[i][j]==0)
                {
                    sol[i][j]=nrl;
                }
            }
        }
        else
        {
            sol[i][1]=sol[i-1][n-1]+1;
            sol[i][1]%=nrl;
                if (sol[i][1]==0)
                {
                    sol[i][1]=nrl;
                }
            for (j=2;j<=n-1;j++)
            {
                sol[i][j]=(sol[i][j-1]+1)%nrl;
                if (sol[i][j]==0)
                {
                    sol[i][j]=nrl;
                }
            }
        }
    }
    for (i=1;i<=n-1;i++)
    {
        for (j=1;j<=n-1;j++)
        {
            fr[sol[i][j]]++;
        }
    }
    poz=1;
    for (j=1;j<=nrl;j++)
    {
        if (fr[j]==1)
        {
            sol[n][poz]=j;
            poz++;
        }
    }
    for (i=1;i<=n;i++)
    {
        for (j=1;j<=n-1;j++)
        {
            g<<sol[i][j]<<" ";
        }
        g<<'\n';
    }
    return 0;
}