Submission #1179879

#TimeUsernameProblemLanguageResultExecution timeMemory
1179879zadniprovskaRack (eJOI19_rack)C++20
100 / 100
0 ms396 KiB
#include <bits/stdc++.h> using namespace std; #define el '\n' #define ll long long #define ld long double #define ull unsigned long long #define pll pair<long long, long long> #define ppll pair< pair<long long, long long>, long long > #define ff first #define ss second #define pb push_back #define pf push_front #define all(x) x.begin(), x.end() const ll DIM = 2e5 + 7; const ll INF = 1e16; const ll mod = 1e9 + 7; const ll maxlog = 20; ll binpow (ll a, ll b) { ll res = 1; while (b) { if (b & 1) { res *= a; res %= mod; b--; } else { a *= a; a %= mod; b /= 2; } } return res; } void solve() { ll n, k; cin >> n >> k; ll kk = k-1, st = 1, ans = 1; while (kk > 0) { if (kk % 2) { ans += binpow(2, (n-st)); //ans += (1 << (n-st)); ans %= mod; } kk /= 2; st++; } cout << ans << el; } signed main(){ ios::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr); //freopen("nocross.in", "r", stdin); //freopen("nocross.out", "w", stdout); int ntest = 1; //cin >> ntest; while (ntest--){ solve(); } return 0; } ;
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...