#include "bits/stdc++.h" using namespace std; #define all(x) begin(x),end(x) template ostream& operator<<(ostream &os, const pair &p) { return os << '(' << p.first << ", " << p.second << ')'; } template::value, typename T_container::value_type>::type> ostream& operator<<(ostream &os, const T_container &v) { string sep; for (const T &x : v) os << sep << x, sep = " "; return os; } #define debug(a) cerr << "(" << #a << ": " << a << ")\n"; typedef long long ll; typedef vector vi; typedef vector vvi; typedef pair pi; const int mxN = 1e5+1, oo = 1e9; int main() { int n; cin >> n; vector> res; for(int x=0;x*x*3<=n;++x) { for(int y=x;x*y + y*y + x*y<=n;++y) { int num = n-(x*y); int denum = (x+y); if(num>=0 and denum!=0 and num%denum==0) { int z = num/denum; if(y<=z) { array arr = {x,y,z}; do { res.push_back(arr); } while(next_permutation(all(arr))); } } } } cout << res.size() << '\n'; for(auto ans : res) { cout << ans << '\n'; } }