//============================================================================
// Name : 1032.cpp
// Author : sww
// Version : 1.0
// Time : 2013-11-21 22:33:10
//===========================================================================
#include <stdio.h>
#include <cmath>
using namespace std;
int main() {
int t;
scanf("%d", &t);
int q = sqrt(t * 2);
int sum = q * (q + 1) / 2 - 1;
while (sum <= t) {
q++;
sum = q * (q + 1) / 2 - 1;
}
q--;
sum = q * (q + 1) / 2 - 1;
int ch = t - sum;
// printf("q=%d sum=%d ch=%d\n", q, sum, ch);
if (ch == 0) {
for (int i = 2; i <= q - 1; i++) {
printf("%d ", i);
}
printf("%d\n", q);
} else if (ch == q) {
for (int i = 3; i <= q; i++) {
printf("%d ", i);
}
printf("%d\n", q + 2);
} else {
int rm = q + 1 - ch;
for (int i = 2; i <= q; i++) {
if (i != rm)
printf("%d ", i);
}
printf("%d\n", q + 1);
}
return 0;
}
poj1032
最新推荐文章于 2019-10-14 00:10:34 发布