#include #include #include #include #include #include #include using namespace std; bool is_prime(long long x){ bool res=true; if(x==1)res=false; for(long long i=2;i*i<=x;i++){ if(x%i==0){ res=false; return res; } } return res; } bool is_rippo(long long x){ bool res=false; if(x==1)res=false; for(long long i=2;i*i*i<=x;i++){ if(i*i*i==x){ res=true; return res; } } return res; } bool is_kanzen(long long x){ bool res=false; if(x==1){ res=false; return res; } long long sum=1; for(long long i=2;i*i<=x;i++){ if(x%i==0){ sum+=i; if(x/i==i)continue; sum+=x/i; } } if(sum==x){ res=true; } return res; } int main(){ int n; cin >> n; if(is_prime(n)){ cout << "Sosu!" << endl; return 0; } int temp=sqrt(n); if(temp*temp==n && n!=1){ cout << "Heihosu!" << endl; return 0; } if(is_rippo(n)){ cout << "Ripposu!" << endl; return 0; } if(is_kanzen(n)){ cout << "Kanzensu!" << endl; return 0; } cout << n << endl; return 0; }