This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
#define rep(a, b) for(ll a = 0; a < (b); ++a)
const ll MOD=1e9+7, LIM=1e6+7;
ll pot[LIM];
int main() {
ios_base::sync_with_stdio(0); cin.tie(0);
pot[0]=1;
rep(i, LIM-1) pot[i+1]=(pot[i]*2)%MOD;
ll n, k, ans=0;
cin >> n >> k; --k;
for(ll i=n-1; i>=0; --i) {
if(k&1) ans=(ans+pot[i])%MOD;
k>>=1;
}
cout << ans+1 << '\n';
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |