Submission #929525

#TimeUsernameProblemLanguageResultExecution timeMemory
929525ChinguunRack (eJOI19_rack)C++14
100 / 100
4 ms348 KiB
#include<bits/stdc++.h>
using namespace std;

#define int long long
#define ff first
#define ss second
#define pb push_back
#define meta int x = i * 2 + 1, y = x + 1, m = (L + R) / 2

const int N = 2e5 + 7;
const int oo = 1e18;
const int mod = 1e9 + 7;

typedef pair<int, int> pii;
typedef vector<int> vi;
typedef vector<pii> vii;

int ans;

signed main() {
	ios_base::sync_with_stdio(0);
	cin.tie(0); cout.tie(0);
	
	int n, k; cin >> n >> k;
	for(int i = 1; i <= n; i++) {
		if(k % 2 == 1 || k == 0) {
			ans *= 2;
			ans %= mod;
			k /= 2;
			k++;
		}
		else {
			ans *= 2;
			ans++;
			ans %= mod;
			k /= 2;
		}
	}
	cout << (ans + 1) % mod << '\n';
	return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...