제출 #509713

#제출 시각아이디문제언어결과실행 시간메모리
509713tudorRack (eJOI19_rack)C++17
100 / 100
6 ms4044 KiB
#include <iostream> using namespace std; const int mod = 1e9 + 7; const int nmax = 1e6; int p2[nmax + 1]; void precalc ( int n ) { p2[0] = 1; for ( int i = 1; i <= n; i++ ) { p2[i] = p2[i - 1] + p2[i - 1]; if ( p2[i] >= mod ) p2[i] -= mod; } } int main () { int n; long long k, rez = 1; cin >> n >> k; k--; precalc ( n ); for ( int i = 1; i <= n; i++ ) { if ( k % 2 ) { rez = rez + p2[n - i]; if ( rez >= mod ) rez -= mod; } k /= 2; } cout << rez; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...