Submission #805211

# Submission time Handle Problem Language Result Execution time Memory
805211 2023-08-03T14:06:56 Z Essa2006 Rack (eJOI19_rack) C++14
100 / 100
13 ms 4052 KB
#include<bits/stdc++.h>
using namespace std;
#define ll long long 
#define endl '\n'
#define FF first
#define SS second
#define all(a) a.begin(), a.end()
#define mod (ll)(1000000007)
int add(ll a, ll b){
    ll res=a+b;
    return res%mod;
}
int mul(ll a, ll b){
    a%=mod, b%=mod;
    ll res=a*b;
    return res%mod;
}
int main(){
    ios_base::sync_with_stdio(0);cin.tie(0);
    ll n, k;
    cin>>n>>k;
    vector<int>Pr(n+1);
    Pr[0]=1;
    for(int i=1;i<=n;i++){
        Pr[i]=mul(Pr[i-1], 2);
    }
    ll ans=1;
    for(int i=n-1;i>=0;i--){
        if(k%2==0)
            ans=add(ans, Pr[i]);
        k=(k+1)/2;
    }
    cout<<ans;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 0 ms 212 KB Output is correct
4 Correct 1 ms 320 KB Output is correct
5 Correct 1 ms 320 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 0 ms 212 KB Output is correct
4 Correct 1 ms 320 KB Output is correct
5 Correct 1 ms 320 KB Output is correct
6 Correct 0 ms 320 KB Output is correct
7 Correct 0 ms 212 KB Output is correct
8 Correct 1 ms 212 KB Output is correct
9 Correct 1 ms 212 KB Output is correct
10 Correct 1 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 0 ms 212 KB Output is correct
4 Correct 1 ms 320 KB Output is correct
5 Correct 1 ms 320 KB Output is correct
6 Correct 0 ms 320 KB Output is correct
7 Correct 0 ms 212 KB Output is correct
8 Correct 1 ms 212 KB Output is correct
9 Correct 1 ms 212 KB Output is correct
10 Correct 1 ms 212 KB Output is correct
11 Correct 1 ms 212 KB Output is correct
12 Correct 0 ms 212 KB Output is correct
13 Correct 1 ms 340 KB Output is correct
14 Correct 1 ms 452 KB Output is correct
15 Correct 13 ms 4052 KB Output is correct