Submission #579218

#TimeUsernameProblemLanguageResultExecution timeMemory
579218KiprasRack (eJOI19_rack)C++17
0 / 100
8 ms8148 KiB
#include <bits/stdc++.h>

typedef long long ll;

using namespace std;

const ll mod = 1e9+7;
const ll maxN = 1e6+10;

ll secondPower[maxN];

void gen(){
    secondPower[0]=1;
    for(int i = 1; i < maxN; i++)secondPower[i]=(secondPower[i-1]*2)%mod;
}

int main()
{

    ios_base::sync_with_stdio(0);cin.tie(nullptr);

    gen();

    ll n, k;
    cin>>n>>k;

    ll res=1;

    for(int i = n-1; i > 0; i--){
        if(k%2==1){
            k=k/2+1;
            //res=(res+secondPower[i])%mod;
        }else{
            k=k/2;
            res=(res+secondPower[i])%mod;
        }
    }

    cout<<res;

    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...