IMohammedNasr

B. Playing With Divisors

Sep 24th, 2022
616
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.02 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. #define cin(v) for (auto &i : v) cin >> i;
  4. #define cout(v) for (auto &i : v) cout << i << " "; cout<<'\n';
  5. #define ll long long
  6. #define ull unsigned long long
  7. #define all(v) v.begin(), v.end()
  8. #define rall(v) v.rbegin(), v.rend()
  9. #define MOD 1000000007
  10. #define Time cerr << "Time Taken: " << (float)clock() / CLOCKS_PER_SEC << " Secs"<< "\n";
  11.  
  12. void Warding()
  13. {
  14.     ios_base::sync_with_stdio(false), cin.tie(nullptr), cout.tie(nullptr);
  15. #ifndef ONLINE_JUDGE
  16.     freopen("input.txt", "r", stdin), freopen("output.txt", "w", stdout);
  17. #endif
  18. }
  19.  
  20. /*
  21. STOP USING int
  22. */
  23.  
  24.  
  25.  
  26. void solve(){
  27.     ll n; cin>>n;
  28.     ll l = 0, r = 1e9, best = 0;
  29.     while(l <= r){
  30.         ll mid = l + (r - l) / 2;
  31.         if(mid * mid == n) best = mid;
  32.         (mid * mid >= n ? r = mid - 1 : l = mid + 1);
  33.     }
  34.     cout<<(best*best == n ? "YES" : "NO")<<endl;
  35. }
  36.  
  37.  
  38. int main()
  39. {
  40.     Warding();
  41.     int TC = 1;
  42.     cin >> TC;
  43.     while (TC--)
  44.     {
  45.         solve();
  46.     }
  47.     Time
  48. }
Advertisement
Add Comment
Please, Sign In to add comment