fork download
  1. #include <bits/stdc++.h>
  2.  
  3. using namespace std;
  4.  
  5. long long power(long long x, long long y)
  6. {
  7. long long temp;
  8. if( y == 0)
  9. return 1;
  10. temp = power(x, y/2);
  11. if (y%2 == 0)
  12. return temp*temp;
  13. else
  14. return x*temp*temp;
  15. }
  16.  
  17.  
  18. int main()
  19. {
  20. long long n;
  21. cin>>n;
  22. bool flag=false;
  23. long long bmax=(long long)(log2(n));
  24. for (int i=2;i<=bmax;i++)
  25. {
  26. long long a =pow(n,1.0/(long double)i);
  27. if(power(a,i)==n||power(a+1,i)==n)
  28. {
  29. flag=true;
  30. break;
  31. }
  32. }
  33. if(flag)
  34. cout<<"YES\n";
  35. else
  36. cout<<"NO\n";
  37.  
  38. return 0;
  39. }
  40.  
Success #stdin #stdout 0s 3460KB
stdin
10
stdout
NO