제출 #440435

#제출 시각아이디문제언어결과실행 시간메모리
440435stoyan_malininRack (eJOI19_rack)C++14
40 / 100
1081 ms204 KiB
#include <iostream> using namespace std; long long n, k; long long getNum(long long pos, int p2, int seqPos) { while(seqPos+(1LL<<(n-1-p2))<=pos) { seqPos += (1LL<<(n-1-p2)); p2++; } if(pos==seqPos) return (1LL<<(p2 - (k%2==0))); //cout << pos << " " << p2 << " " << seqPos << '\n'; long long nextSeqPos = seqPos+(1LL<<(n-1-p2)); long long diff = pos - seqPos; return getNum(nextSeqPos+diff, p2, seqPos) - (1<<p2); } int main() { cin >> n >> k; if(k==1) { cout << "1" << '\n'; return 0; } //for(int k = 2;k<=(1<<n);k++) cout << getNum(k, 0, 1) << '\n'; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...