Cod sursa(job #1328627)
| Utilizator | Data | 28 ianuarie 2015 16:50:24 | |
|---|---|---|---|
| Problema | Farfurii | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.54 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream F("farfurii.in");
ofstream G("farfurii.out");
const int N = 100010;
int n,a[N],i;
long long k;
int main()
{
F>>n>>k;
for (i=1;i<=n;++i)
{
if ( 1LL * (n-i-2) * (n-i-1) <= k )
break;
a[i] = i;
}
a[i] = i + k - 1LL * (n-i-2) * (n-i-1);
int v = a[i];
++i;
for (int j=n;i<=n;--j)
if ( j != v )
a[i++] = j;
for (int i=1;i<=n;++i)
G<<a[i]<<' ';
G<<'\n';
}
