IMohammedNasr

J. Playing With Cat

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