Pagini recente » Cod sursa (job #877231) | Cod sursa (job #2417148) | Cod sursa (job #1530701) | Cod sursa (job #840513) | Cod sursa (job #3133828)
#include <fstream>
using namespace std;
ifstream fin("farfurii.in");
ofstream fout("farfurii.out");
typedef long long l;
l inv;
int farfurii[100005];
int main()
{
int n;
fin >> n;
int pozitie = n - 1;
fin >> inv;
farfurii[n] = 1;
while (inv >= (n - pozitie) && pozitie >= 1)
{
farfurii[pozitie] = farfurii[pozitie + 1] + 1;
inv -= n - pozitie;
pozitie--;
}
int maxi = farfurii[pozitie + 1];
farfurii[pozitie] = farfurii[n - inv] + n - maxi - 1;
for (int i = pozitie + 1; i <= n; i++)
farfurii[i] += n - maxi;
for (int i = n - inv + 1; i <= n; i++)
farfurii[i]--;
for (int i = 1; i < pozitie; i++)
farfurii[i] = i;
for (int i = 1; i <= n; i++)
fout << farfurii[i] << ' ';
return 0;
}