Cod sursa(job #1196821)

Utilizator apopeid15Apopei Daniel apopeid15 Data 9 iunie 2014 12:12:42
Problema Lacate Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.88 kb
#include <iostream>
#include <stdio.h>
using namespace std;
FILE *in,*out;
int permutari(int x,int y)
{
    int s=1;
    for(int i=x;i<=y;i++)
    {
        s=s*i;
    }
    return s;
}
int m[1000][1000];
int main()
{
    int x,l,c,i,j,nr=1,q=0;
    in = fopen ("lacate.in","r");
    out = fopen ("lacate.out","w");
    fscanf (in,"%d",&x);
    if(x==2)
    {
        fprintf (out,"%d %d\n%d\n%d",1,1,1,1);
        return 0;
    }
    l=(x*(x-1))/2;
    c=(l*2)/x;
    int h;
    for(i=0;i<x;i++)
    {
        h=i+1;
        for(j=0;j<c;j++)
        {
            if(m[i][j]==0)
                {m[i][j]=m[h][q]=nr;
            nr++;
            h++;}
        }
        q++;
    }
    fprintf(out,"%d %d\n",l,c);
    for(i=0;i<x;i++)
    {
        for(j=0;j<c;j++)
            fprintf(out,"%d ",m[i][j]);
        fprintf(out,"\n");
    }
    return 0;
}