제출 #232173

#제출 시각아이디문제언어결과실행 시간메모리
232173PanTkdRack (eJOI19_rack)C++14
40 / 100
5 ms384 KiB
//
//  main.cpp
//  Hanging Rack
//
//  Created by Panagiotis Hadjicostas on 16/05/2020.
//  Copyright © 2020 Panagiotis Hadjicostas. All rights reserved.
//

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define MOD ll(1e9+7)
ll din[1000003];
ll invertBits(ll num,ll n)
{
    ll b=0;
    for (ll i = 0; i <= n-1; i++){
        if((din[i]&num)==din[i]){
            b+=(din[n-i-1]);
            b%=MOD;
        }
    }
    return b;
}
int main() {
    
    ll n,k;cin>>n>>k;
    din[0]=1;
    for(ll i=1;i<=n;i++){
        din[i]=(din[i-1]*2)%MOD;
    }
    cout<<invertBits(k-1, n)+1<<endl;
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...