Cod sursa(job #2746083)

Utilizator Teo_1101Mititelu Teodor Teo_1101 Data 27 aprilie 2021 14:22:29
Problema Farfurii Scor 90
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.76 kb
#include <iostream>
#include <fstream>

using namespace std;

const int NMAX = 100001;

ifstream fin("farfurii.in");
ofstream fout("farfurii.out");

int N, K;
long long inv;
int V[NMAX];

int main()
{
    fin >> N >> K;

    for( int i = 1; i <= N; ++i )
        V[i] = N - i + 1;

    inv = ( 1LL * N * ( N - 1 ) ) / 2;
    inv -= K;

    int idx = N;

    while( inv ){
        if( idx - 1 <= inv )
        {
            fout << V[idx] << ' ';
            V[idx] = 0;
            idx--;
            inv -= idx;
        }
        else{
            fout << V[inv+1] << ' ';
            V[inv+1] = 0;
            inv = 0;
        }
    }

    for( int i = 1; i <= N; ++i )
        if( V[i] ) fout << V[i] << ' ';

    return 0;
}