Cod sursa(job #109047)
Utilizator | Data | 24 noiembrie 2007 15:57:41 | |
---|---|---|---|
Problema | Farfurii | Scor | 10 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.42 kb |
#include <cstdio>
int main() {
freopen("farfurii.in","rt",stdin);
freopen("farfurii.out","wt",stdout);
int n,k;
scanf("%d %d",&n,&k);
int m;
for (m = 0; (m*(m+1))/2 < k; ++m);
for (int i = 1; i<m-1; ++i) printf("%d ",i);
int x;
if ((m*(m+1))/2 == k) {
x = -1;
} else {
x = n-((m*(m+1))/2 - k);
printf("%d ",x);
}
for (int i = n; i>=m-1; --i)
if (i != x) printf("%d ",i);
printf("\n");
}