Submission #581060

#TimeUsernameProblemLanguageResultExecution timeMemory
581060vaneaRack (eJOI19_rack)C++14
100 / 100
3 ms296 KiB
#include <bits/stdc++.h> using namespace std; using ll = long long; const int mod = 1e9+7; ll power(int x, int y) { ll temp; if(y == 0) return 1; temp = power(x, y / 2); if (y % 2 == 0) return (temp * temp) % mod; else { if(y > 0) return (x * temp * temp)%mod; else return ((temp * temp) / x) % mod; } } int main() { ll n, k; cin >> n >> k; if(k == 1) { cout << 1; return 0; } ll ans = 1; for(int i = n-1; i >= 0; i--) { if(k % 2 == 1) { k = k / 2 + 1; } else { k /= 2; ans += power(2, i); ans %= mod; } } cout << ans; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...