Cod sursa(job #1583624)

Utilizator Cristian1997Vintur Cristian Cristian1997 Data 29 ianuarie 2016 09:42:48
Problema Farfurii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.59 kb
#include <fstream>
using namespace std;
#define Nmax 100001

int main()
{
    int i;
    long long m, n, k, dif, nr;
    
    ifstream fin("farfurii.in");
    ofstream fout("farfurii.out");
    fin >> n >> k;
    fin.close();
    
    for(m = 1; (m + 1) * m / 2 <= k; ++m) ;
    dif = m * (m + 1) / 2 - k;
    // m(m-1) / 2 <= k
    
    for(i = 1; i <= n - m - 1; ++i) fout << i << ' ';
    fout << n - dif << ' ';
    for(nr = n, ++i; i <= n; --nr, ++i)
    {
        if(nr == n - dif) --nr;
        fout << nr << ' ';
    }
    
    fout.close();
    
    return 0;
}