Cod sursa(job #1501612)

Utilizator AnaRaduAna-Maria Radu AnaRadu Data 13 octombrie 2015 17:57:58
Problema Farfurii Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include <stdio.h>
#include <math.h>
#define lim 100000
int v[lim+1];
int main(){
    FILE *fin,*fout;
    fin=fopen("farfurii.in","r");
    fout=fopen("farfurii.out","w");
    int i,j,x,y,n,k;
    fscanf(fin,"%d%d",&n,&k);
    x=sqrt(2*k);
    while(x*(x+1)/2>k)
        x--;
    y=k-x*(x+1)/2;
    for(i=1;i<=n-x-2;i++)
        v[i]=i;
    j=i;
    for(i=0;i<=x;i++){
        if(i==y){
            v[n-x-1]=j;
            j++;
        }
        v[n-i]=j;
        j++;
    }
    for(i=1;i<=n;i++)
        fprintf(fout,"%d ",v[i]);
    fclose(fin);
    fclose(fout);
    return 0;
}