Cod sursa(job #2902089)

Utilizator andlftLefter Andrei andlft Data 15 mai 2022 15:58:31
Problema Farfurii Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.8 kb
#include <iostream>
#include <fstream>
using namespace std;

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

    long long n,k,j,i=0;
    fin>>n>>k;

    while(k > i*(i+1)/2)
    {
        i++;  //lungime subsir descrescator + 1
    }
    for( j = 1; j < n-i; j++)
    {
        fout<<j<<" "; //numerele de la inceput raman la fel, pt aranjarea lexicografica
    }
    i--; //lungimea reala a sirului descrescator
    long long nr_inv = i*(i+1)/2;
    long long nr_completare_inv = n - i + k - nr_inv - 1;// nr pus in fata subsirului desc pt inversiuni extra
    fout<< nr_completare_inv <<" ";
    for( j = 0; j < i+2 ; j++)
    {
        if(n - j != nr_completare_inv)
        {
            fout<<n-j<<" ";
        }
    }



    return 0;
}