Submission #532286

#TimeUsernameProblemLanguageResultExecution timeMemory
532286DariaRRack (eJOI19_rack)C++17
40 / 100
1 ms204 KiB
#include <bits/stdc++.h>
using namespace std; 

const int MOD = 1e9 + 7;

int main() {
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    int n, k;
    long long v = 1;
    long long base = 1;
    cin >> n >> k;
    k--; 

    for (int i = 1; i <= n; i++) {
        if (k % 2 == 0) {
            v = ((long long)v * 2) % MOD;
        } else {
            v = ((long long)v * 2 + 1) % MOD;
        }
        k /= 2;
    }
    
    for (int i = 1; i <= n; i++) {
        base = ((long long)base * 2) % MOD;
    }

    cout << (v - (base - 1) + MOD) % MOD << "\n";
    
	return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...