#include<iostream>
#include<cstdio>
using namespace std;
typedef long long ll;
int a[100], b[100];
int main() {
int rs = 0, len = 0;
for (int i = 2; rs <= 1010; i++) {
a[len++] = i;
rs += i;
}
int n;
while (scanf("%d", &n) != EOF) {
if (n <= 4) {
continue;
}
rs = 0;
int k = 0;
for (int i = 0; i < len - 1; i++) {
rs += a[i];
if (n - rs < a[i + 1]) {
b[k++] = a[i];
rs = n - rs;
int j = k - 1;
while (1) {
b[j--] += 1;
rs--;
if (rs <= 0) break;
if (j == -1) j = k - 1;
}
}
else if (n - rs == a[i + 1]) {
b[k++] = a[i];
b[k++] = a[i + 1];
break;
}
else {
b[k++] = a[i];
}
if (rs <= 0) {
break;
}
}
printf("%d", b[0]);
for (int i = 1; i < k; i++) {
printf(" %d", b[i]);
}
printf("\n");
}
return 0;
}