Cod sursa(job #210363)

Utilizator katakunaCazacu Alexandru katakuna Data 27 septembrie 2008 14:27:14
Problema Farfurii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
#include<stdio.h>

long long n,k,i;

int main(){


FILE *f=fopen("farfurii.in","r");
fscanf(f,"%lld %lld",&n,&k);
fclose(f);

FILE *g=fopen("farfurii.out","w");

long long r= (n-1)*(n-1-1) >>1;
long long e=n-2;

  for(i=1;i<=n;i++){
    if(k<= r ){
    fprintf(g,"%lld ",i);
    r-=e;
    e--;
    }

    else
    break;

  }

if(i<=n){
long long  j;
long long p=i;
 p+=k- ( (n-i)*(n-i-1) >>1);
 fprintf(g,"%lld ",p);

   for(j=n;j>p;j--)
   fprintf(g,"%lld ",j);

   for(j=p-1;j>=i;j--)
   fprintf(g,"%lld ",j);

}
fclose(g);

return 0;
}