Submission #833615

#TimeUsernameProblemLanguageResultExecution timeMemory
833615tolbiRack (eJOI19_rack)C++17
0 / 100
0 ms212 KiB
#include <bits/stdc++.h> using namespace std; const int MOD = 1e9+7; #define tol(bi) (1LL<<((int)(bi))) int solve(int n, long long k){ if (n<=64 && k>tol(n-1)){ return ((long long)solve(n-1,k)*2ll)%MOD; } else { if (k==1){ return 1ll; } if (k%2){ return solve(n-1,k/2+1); } else { return (solve(n-1,k/2)+tol(n-1))%MOD; } } } int main(){ long long n,k; cin>>n>>k; cout<<solve(n,k)<<endl; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...