Advertisement
Emiliatan

a241

Apr 5th, 2019
130
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.82 KB | None | 0 0
  1. /* a241            */
  2. /* AC (2ms, 104KB) */
  3. #pragma GCC optimize("O3")
  4. #include <cstdio>
  5. #include <algorithm>
  6. #define min(x, y) ((x) > (y) ? (y) : (x))
  7.  
  8. using namespace std;
  9.  
  10. typedef long long int64;
  11.  
  12. const int MAXN = 190000000;
  13. int m, pos, num[220]{1}, nexindex = 1, i2 = 0, i5 = 0;
  14. int64 n;
  15.  
  16. int main()
  17. {
  18.     while(nexindex < 212)
  19.     {
  20.         int a = min((num[i2] << 1), (num[i5] + (num[i5] << 2)));
  21.  
  22.         num[nexindex] = a;
  23.  
  24.         while((num[i2] << 1) <= num[nexindex])
  25.             i2++;
  26.         while((num[i5] + (num[i5] << 2)) <= num[nexindex])
  27.             i5++;
  28.  
  29.         nexindex++;
  30.     }
  31.  
  32.     scanf("%d",&m);
  33.     while(m-- && scanf("%lld", &n))
  34.     {
  35.         pos = lower_bound(num, num + 213, n) - num;
  36.  
  37.         if(num[pos] > n) pos--;
  38.  
  39.         printf("%d\n", pos);
  40.     }
  41.     return 0;
  42. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement