#include <bits/stdc++.h>
int main() {
  int i, r;
  int n, u, k;
  scanf("%d", &k);
  for (n = 1;; n++) {
    if ((n * (n + 1) / 2) > k) break;
  }
  r = n - 1;
  u = k - (n * (n - 1) / 2);
  printf("%d\n", r);
  for (i = 0; i < (r - 1); i++) {
    printf("%d ", i + 1);
  }
  printf("%d", r + u);
  return 0;
}
