Cod sursa(job #1083226)

Utilizator dan.ghitaDan Ghita dan.ghita Data 15 ianuarie 2014 19:04:57
Problema Farfurii Scor 100
Compilator cpp Status done
Runda Teme Pregatire ACM Unibuc 2013 Marime 0.55 kb
#include <iostream>
#include <fstream>
#include <math.h>
using namespace std;
long long x, i, val, n, k;
ifstream f("farfurii.in");
ofstream g("farfurii.out");

long long farf(long long k) {
    double x;
    x = (1 + sqrt(1+8*k))/2;
    if (x == (long long)x)
        return x;
    else return (long long)x + 1;
}

int main() {

    f>>n>>k;
    x=farf(k);
    val=x*(x-1)/2;
    for (i=1; i<=n-x; ++i)
        g<<i<<' ';
    g<<n-(val-k)<<' ';
    for (i=n; i>n-x; --i)
        if (i!=n+k-val)
            g<<i<<' ';

    return 0;
}