Ankit_132

E

Jun 12th, 2024
525
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.04 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. #define ll long long int
  5.  
  6. vector<ll> sieve(ll lm) {
  7.     vector<bool> is_prime(lm + 1, true);
  8.     is_prime[0] = false;
  9.     is_prime[1] = false;
  10.     for(ll i=2;i*i<=lm;i+=1) {
  11.         if(is_prime[i]){
  12.             for (ll j=i*i;j<=lm;j+=i) {
  13.                 is_prime[j] = false;
  14.             }
  15.         }
  16.     }  
  17.     vector<ll> primes;
  18.     for (ll i=2;i<=lm;i++) {
  19.         if (is_prime[i]) {
  20.             primes.push_back(i);
  21.         }
  22.     }
  23.    
  24.     return primes;
  25. }
  26.  
  27. int main() {
  28.     int t;
  29.     cin>>t;
  30.    
  31.     while(t--){
  32.         ll n,fl=0;
  33.        cin >> n;
  34.        ll k = n;
  35.        vector<ll>s = sieve(int(sqrt(n)+1));
  36.        
  37.        for(auto e:s){
  38.            ll a = n-4-e*e;
  39.            if(a<=0)continue;
  40.            ll p = sqrt(a);
  41.            if(binary_search(s.begin(), s.end(),p) && p*p==a && p!=e && p != 2){
  42.                 fl = 1;
  43.                 break;
  44.            }
  45.        }
  46.        
  47.        if(fl)
  48.             cout<<"YES\n";
  49.        else
  50.             cout<<"NO\n";
  51.     }
  52. }
  53.  
Advertisement
Add Comment
Please, Sign In to add comment