#include using namespace std; #define ll long long int Max(int a, double b){ if(a > b)return a; else { int k = floor(b); return k; } } int main() { int x; cin >> x; ll ans = 0; for(int a=0; a<=300; a++){ for(int b=a; b<=300; b++){ for(int c=b; c<=300; c++){ for(int d=c; d<=300; d++){ for(int e=d; e<=300; e++){ for(int f=Max(e, floor(cbrt(x - (a*a*a+b*b*b+c*c*c+d*d*d+e*e*e)))); f<=300; f++){ if(a*a*a+b*b*b+c*c*c+d*d*d+e*e*e+f*f*f == x){ ans++; break; } if(a*a*a+b*b*b+c*c*c+d*d*d+e*e*e+f*f*f > x){ break; } } if(a*a*a+b*b*b+c*c*c+d*d*d+e*e*e > x)break; } if(a*a*a+b*b*b+c*c*c+d*d*d > x)break; } if(a*a*a+b*b*b+c*c*c > x)break; } if(a*a*a+b*b*b > x)break; } if(a*a*a > x)break; } cout << ans << endl; }