제출 #1268257

#제출 시각아이디문제언어결과실행 시간메모리
1268257axleofapulleyRack (eJOI19_rack)C++20
40 / 100
0 ms328 KiB
#include<bits/stdc++.h>
using namespace std;
int binexp(long long a){
    if(a==0) return 1;
    if(a==1) return 2;
    if(a&1) return (2*binexp(a/2)*binexp(a/2))%1000000007;
    return (binexp(a/2)*binexp(a/2))%1000000007;
}
int main(){
    long long n, k; cin >> n >> k; int sol[n]; for(int i = 0; i < n; i++) sol[i]=0; int ans = 1; 
    for(int i = 0; i < min(n,64ll); i++){
        if((k-1)%binexp(i+1)>=binexp(i)) sol[i]=1;
    }
    for(int i = 0; i < min(n,64ll); i++){
        ans=(ans+sol[i]*binexp(n-i-1))%1000000007;
    }
    cout << ans;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...