# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
916623 | 2024-01-26T07:28:41 Z | tuannm | Intercastellar (JOI22_ho_t1) | C++17 | 1 ms | 2396 KB |
#include<bits/stdc++.h> #define ii pair<int, int> #define ll pair<long long, long long> #define fi first #define se second #define pb push_back using namespace std; const int mod[2] = {1000000007, 998244353}; const int N = 2e5 + 1; const string NAME = ""; const int lim = 2147483647; //const unsigned int lim = 4294967295; //const long long lim = 9223372036854775807; //const unsigned long long lim = 18446744073709551615; const int mset = 0x3f; const double pi = acos(-1); int n, q; ll a[N]; long long sum[N]; void inp(){ cin >> n; for(int i = 1; i <= n; ++i){ cin >> a[i].fi; a[i].se = 1; while(a[i].fi % 2 == 0){ a[i].se *= 2; a[i].fi /= 2; } sum[i] = sum[i - 1] + a[i].se; cout << a[i].fi << ' ' << a[i].se << "\n"; } cin >> q; } void solve(){ while(q--){ long long x; cin >> x; int l = 1, r = n, ans = n; while(l <= r){ int mid = (l + r) / 2; if(sum[mid] >= x){ ans = mid; r = mid - 1; } else l = mid + 1; } cout << a[ans].fi << "\n"; } } int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); if(fopen((NAME + ".inp").c_str(), "r")){ freopen((NAME + ".inp").c_str(), "r", stdin); freopen((NAME + ".out").c_str(), "w", stdout); } inp(); solve(); }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Incorrect | 1 ms | 2396 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Incorrect | 1 ms | 2396 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Incorrect | 1 ms | 2396 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |