# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
464115 | 2021-08-12T11:58:15 Z | Sench2006 | Rack (eJOI19_rack) | C++14 | 4 ms | 8140 KB |
#include <bits/stdc++.h> using namespace std; #define ll long long #define ar array #define f first #define s second #define mpr make_pair #define pb push_back #define lb lower_bound #define ub upper_bound #define all(x) x.begin(), x.end() #define FOR(i, a, b) for(auto i = a; i < b; i++) #define FORD(i, a, b) for(auto i = a - 1; i >= b; i--) #define trav(x, v) for(auto x : v) #define fastio ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0); #define fileio freopen("input.txt", "r", stdin); freopen("output.txt", "w", stdout); // --------------- SOLUTION --------------- // const ll MOD = 1e9+7; const int mxN = 1e6+7; ll n, k, x[mxN]; ll getAns(ll n, ll k) { if (n == 0) { return 1; } if (k % 2ll == 1ll) { return getAns(n - 1, (k + 1) / 2); } if (k % 2ll == 0ll) { return (getAns(n - 1, k / 2) + (x[n - 1])) % MOD; } } void solve() { cin >> n >> k; memset(x, 1ll, sizeof(x)); FOR(i, 1, n) { x[i] = (x[i - 1] * 2) % MOD; } cout << getAns(n, k) << "\n"; } int main() { fastio; //fileio; int tests = 1; // cin >> tests; while (tests--) { solve(); } return 0; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 4 ms | 8140 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 4 ms | 8140 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 4 ms | 8140 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |