#include #include using namespace std; using ll = long long; #define REP(i,n) for(int i=0;i void chmin(T& a, T b) { a = min(a, b); } template void chmax(T& a, T b) { a = max(a, b); } #define PR(x) cerr << #x << "=" << x << endl using i128 = __int128_t; int main() { ll s; cin >> s; vector ans; while(s) { ll ss = sqrtl(s); ll ss2 = ss * ss; s -= ss2; ans.push_back(ss); } cout << ans.size() << endl; REP(i, ans.size()) { cout << ans[i] << ' '; } return 0; }