제출 #883229

#제출 시각아이디문제언어결과실행 시간메모리
883229DrAymeinsteinRack (eJOI19_rack)C++17
40 / 100
1 ms348 KiB
// European Junior Olympiad in Informatics 2019
// Maribor, Slovenia, Day 1: rack

#include <iostream>

using namespace std;

const long int mod = 1000000007;

int n = 1;
int k = 1;
int i = 1;
int r = 1; // (just wanna make my code longer)

int pow2(int x) {
    if (!x) {
        return 1;
    }
    if (x & 1) {
        return 2 * pow2(x / 2) % mod * pow2(x / 2) % mod;
    }
    return (pow2(x / 2) * pow2(x / 2) % mod);
}

signed main() {
    cin >> n >> k;

    for (i = n - 1; i >= 0; i--) {
        if (k & 1) k++;
        else r = (r + pow2(i)) % mod;
        k = (k + 1) / 2;
    }
    cout << r << endl;

    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...