제출 #1112006

#제출 시각아이디문제언어결과실행 시간메모리
1112006vjudge1Rack (eJOI19_rack)C++17
40 / 100
1 ms508 KiB
#include <bits/stdc++.h>

using namespace std;

#define int long long

int t,n,a,b,cevap,k,pw[1000005];

inline int add(int x,int y){
	if(x+y>=1000000007)return x+y-1000000007;
	return x+y;
}

int32_t main(){
	ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL);
	cin>>n>>k;
	pw[0]=1;
	for(int i=1;i<=n;i++){
		pw[i]=add(pw[i-1],pw[i-1]);
	}
	cevap=1;
	int us=n-1;
	while(k!=1){
		if(k%2==0)cevap+=pw[us];
		us--;
		k=(k+1)/2;
	}
	cout<<cevap<<endl;
	return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...