Submission #1268233

#TimeUsernameProblemLanguageResultExecution timeMemory
1268233axleofapulleyRack (eJOI19_rack)C++20
40 / 100
0 ms328 KiB
#include<bits/stdc++.h> using namespace std; int binexp(long long a){ if(a==0) return 1; if(a==1) return 2; if(a&1) return (2*binexp(a/2)*binexp(a/2))%1000000007; return (binexp(a/2)*binexp(a/2))%1000000007; } int main(){ long long n, k; cin >> n >> k; int sol[n]; for(int i = 0; i < n; i++) sol[i]=0; int ans = 1; for(int i = 0; i < min(n,18ll); i++){ if((k-1)%binexp(i+1)>=binexp(i)) sol[i]=1; } for(int i = 0; i < min(n,18ll); i++){ ans=(ans+sol[i]*binexp(n-i-1))%1000000007; } cout << ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...