Submission #1100867

#TimeUsernameProblemLanguageResultExecution timeMemory
1100867vincentbucourt1Rack (eJOI19_rack)C++14
40 / 100
1 ms336 KiB
#include <bits/stdc++.h> using namespace std; #define int long long const int MOD = 1e9 + 7; int N, numIter; int ans = 0; long long modular(long long base, long long exp, int mod) { long long res = 1; while (exp > 0) { if (exp % 2 == 1) res= (res * base) % mod; exp = exp >> 1; base = (base * base) % mod; } return res; } signed main() { cin >> N >> numIter; numIter--; for (int i = 0; i <= 20; i++) { bool filled = (numIter & (1 << i)); ans += (modular(2, N - i - 1, MOD)) * filled; ans %= MOD; } cout << (ans + 1) % MOD << "\n"; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...