Pagini recente » Cod sursa (job #3294087) | Cod sursa (job #267066) | preONI 2006 (Runda 4) | Cod sursa (job #1903668) | Cod sursa (job #3292969)
#include <fstream>
#include <vector>
using namespace std;
ifstream fin("farfurii.in");
ofstream fout("farfurii.out");
vector <long long> val;
long long n, k, sol[100000 + 5];
void afis()
{
for ( long long i = 0; i < val.size(); ++i )
fout << val[i] << " ";
fout << endl;
}
int main()
{
fin >> n >> k;
long long poz;
long long Smax = n * ( n - 1) / 2, i;
for ( i = 1; i <= n; ++i )
val.push_back(i);
for ( poz = 1; poz <= n; ++poz )
{
i = max( 0LL, -Smax + (long long)val.size() + k - 1);
Smax -= ( (long long)val.size() - i - 1);
sol[poz] = val[i];
val.erase( val.begin() + i);
// fout << " i = " << i << " Smax = " << Smax << endl;
// afis();
}
for ( i = 1; i<= n; ++i )
fout << sol[i] << " ";
return 0;
}