Cod sursa(job #1501983)

Utilizator dyanagGrigore Diana dyanag Data 14 octombrie 2015 00:29:11
Problema Farfurii Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.52 kb
#include<cstdio>
#include<cmath>

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

int v[100001];
long long x, y;

int main()
{
    int n, k, i, j, w;
    fscanf(f, "%d%d", &n, &k);
    x=sqrt(2*k);
    while(x*(x+1)/2>k) --x;
    y=k-x*(x+1)/2;
    w=n-x-2;
    for(i=1; i<=w; ++i)
        v[i]=i;
    j=i;
    for(int i=0; i<=x; ++i){
        if(i==y) v[n-x-1]=j++;
        v[n-i]=j;
        ++j;
    }
    for(int i=1; i<=n; ++i)
        fprintf(g, "%d ", v[i]);
return 0;
}