Cod sursa(job #1081901)

Utilizator maritimCristian Lambru maritim Data 13 ianuarie 2014 22:35:06
Problema Farfurii Scor 100
Compilator cpp Status done
Runda Teme Pregatire ACM Unibuc 2013 Marime 0.51 kb
#include<stdio.h>
 
#define MaxN 100100
#define ll long long
 
ll N,NRI = 0,NRS,M,A[MaxN];
 
int main()
{
    FILE *f = fopen("farfurii.in","r");
    FILE *g = fopen("farfurii.out","w");
     
    fscanf(f,"%d %lld",&N,&M);
    NRS = N+1;
    for(ll i=1;i<=N;i++)
        if(1LL*(N-i)*(N-i-1)/2 < 1LL*M)
        {
            A[--NRS] = i;
            M -= N-i;
        }
        else
            A[++NRI] = i;
    for(int i=1;i<=N;i++)
        fprintf(g,"%d ",A[i]);
     
    fclose(g);
    fclose(f);
    return 0;
}