Submission #634274

# Submission time Handle Problem Language Result Execution time Memory
634274 2022-08-24T08:20:58 Z antimirage Rack (eJOI19_rack) C++14
0 / 100
19 ms 16204 KB
#include <bits/stdc++.h>

using namespace std;

const int N = 1e6 + 5;

long long n, k, ans, mod = 1e9 + 7, two[N];

main(){
    cin >> n >> k;
    
    two[0] = 1;
    for (int i = 1; i < N; i++) {
        two[i] = two[i - 1] * 2 % mod;
    }
    
    long long pw = n;
    for (long long j = 0; j <= n; j++) {
        assert(j > 60);
        if (k <= (1 << j)) {
            if (j > 0) 
                ans = (ans + two[pw]) % mod;
            else {
                cout << (ans + 1) % mod << endl;
                return 0;
            }
            k -= (1 << (j - 1));
            pw = n;
            j = -1;
        } else {
            pw--;
        }
    }
}

Compilation message

rack.cpp:9:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
    9 | main(){
      | ^~~~
# Verdict Execution time Memory Grader output
1 Runtime error 19 ms 16204 KB Execution killed with signal 6
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 19 ms 16204 KB Execution killed with signal 6
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 19 ms 16204 KB Execution killed with signal 6
2 Halted 0 ms 0 KB -