fork download
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. #define int long long
  4. int p[1000001];
  5.  
  6. //int dp[100001];
  7.  
  8. void pre()
  9. {
  10. memset(p,0,sizeof p);
  11. p[0]=1;
  12. p[1]=1;
  13.  
  14.  
  15. for(int i=2;i<=100;i++)
  16. p[i*i*i]=1;
  17. }
  18.  
  19. main()
  20. {
  21. int t;
  22. cin>>t;
  23. pre();
  24. while(t--)
  25. {
  26. int n,k;
  27. cin>>n>>k;
  28. int cubes = n*n*n;
  29. int left = cubes-k;
  30.  
  31. int cnt=0;
  32. bool f=false;
  33.  
  34.  
  35. while(1)
  36. {
  37. int r= left+ cubes*cnt;
  38. if(r>100*100*100)
  39. break;
  40. // cout<<left<<" ";
  41. if(p[r]){
  42. f=true;
  43. break;
  44. }
  45. cnt++;
  46. }
  47.  
  48. if(p[left])
  49. cout<<"YES"<<endl;
  50. else if(f)
  51. cout<<"YES"<<endl;
  52. else
  53. cout<<"NO"<<endl;
  54. }
  55. }
Success #stdin #stdout 0s 11288KB
stdin
3
2 5
2 2
3 1
stdout
YES
NO
YES