Cod sursa(job #1156662)

Utilizator teo.serbanescuTeo Serbanescu teo.serbanescu Data 27 martie 2014 20:50:37
Problema Farfurii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.73 kb
#include <stdio.h>

using namespace std;

FILE *f,*g;

unsigned long long k,nr,nr1,nrsp,sp,i,n;

int main()
{
    f=fopen("farfurii.in","r");
    g=fopen("farfurii.out","w");
    fscanf(f,"%llu%llu",&n,&k);

    sp=0;
    nr1=n*(n-1)/2;
    for (i=n;(i>1)&&(nr1>k);i--)
    {
        nr=i;
        nr1=(i*(i-1))/2;
        if (nr1==k) sp=1;
    }
    if (sp)
    {
        for (i=1;i<=n-nr;i++) fprintf(g,"%llu ",i);
        for (i=n;i>n-nr;i--) fprintf(g,"%llu ",i);
    }
    else
    {
        nrsp=n-nr*(nr+1)/2+k;
        for (i=1;i<n-nr;i++) fprintf(g,"%llu ",i);
        fprintf(g,"%llu ",nrsp);
        for (i=n;i>=n-nr;i--) if (i!=nrsp) fprintf(g,"%llu ",i);
    }
    fclose(f);fclose(g);
    return 0;
}