Pagini recente » Cod sursa (job #1663579) | Cod sursa (job #1674208) | Cod sursa (job #2709967) | Cod sursa (job #1440249) | Cod sursa (job #2496558)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream f("lacate.in");
ofstream g("lacate.out");
int ma[300][300],nrc,ind,n;
int ap[300000];
int main()
{
f>>n;nrc=n-1;
g<<n*(n-1)/2<<" "<<n-1<<'\n';
for(int i=1;i<n;++i)ma[1][i]=i,ap[i]++;
for(int i=2;i<=n;++i)ma[i][1]=i-1,ap[i-1]++;
for(int i=2;i<=n;++i)
{
ind=1;
for(int k=1;k<i;++k)
{
for(int j=1;j<n;++j)
if(ap[ma[k][j]]==1)
{
ind++;
ap[ma[k][j]]++;
ma[i][ind]=ma[k][j];
break;
}
}
for(int j=1;j<=n*n;++j)
{
// if(i==3)g<<j<<" "<<ap[j]<<endl;
if(!ap[j])ind++,ap[j]++,ma[i][ind]=j;
if(ind==n-1)break;
}
}
for(int i=1;i<=n;++i){
for(int j=1;j<=n-1;++j)
g<<ma[i][j]<<" ";g<<'\n';
}
return 0;
}