Submission #532655

#TimeUsernameProblemLanguageResultExecution timeMemory
532655DomanRack (eJOI19_rack)C++17
100 / 100
9 ms332 KiB
#include<bits/stdc++.h>
using namespace std;
constexpr int mod=1e9+7;
constexpr int eps=1e-6;
constexpr int nax=2e5+5;
constexpr int base=(1<<19);
constexpr long long inf=1e9+1;
#define all(x) (x).begin(),(x).end()
#define sz(x) ((int)(x).size())
#define ll long long
#define IOS ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0)
#define pkt pair<int,int> 

int main(){
	IOS;  
	ll n,k; 
	cin>>n>>k; 
	k--;
	int ans=1; 
	for(int i=1;i<=n;i++){ 
		if(k%2==0){ 
			ans=(ans*2)%mod;
		}
		else{ 
			ans=(ans*2+1)%mod;
		}
		k/=2;
	}
	int pot2=1; 
	for(int i=1;i<=n;i++){ 
		pot2=(2*pot2)%mod;
	}
	cout<<(ans-pot2+1+mod)%mod;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...