Cod sursa(job #650083)
| Utilizator | Data | 17 decembrie 2011 12:48:47 | |
|---|---|---|---|
| Problema | Farfurii | Scor | 90 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.48 kb |
#include <fstream>
using namespace std;
ifstream in("farfurii.in");
ofstream out("farfurii.out");
const int MAXN = 10010;
int n,k,p,i,r;
int main() {
in>>n>>k;
for(p=1; p*(p+1)/2 <= k; p++);
if(p*(p-1)/2 == k) {
for(i=1; i<=n-p; i++) {
out<<i<<' ';
}
for(i=n; i>=n-p+1; i--)
out<<i<<' ';
} else {
for(i=1; i<=n-p-1; i++)
out<<i<<' ';
r = n+k-p*(p+1)/2;
out<<r<<' ';
for(i=n; i>=n-p+1; i--)
out<<(i > r ? i : i-1)<<' ';
}
return 0;
}