Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- main(){
- ios::sync_with_stdio(false);
- cin.tie(0);
- vector<long long> st(62);
- st[0] = 1;
- for(int i = 1; i < 62; i++) st[i] = st[i-1]*2;
- long long len,k;
- cin>>len>>k;
- long long mx = st[len]-1;
- vector<long long> ans;
- ans.push_back(mx);
- k--;
- long long del = 0;
- long long ptr = 0;
- while(k>0){
- long long deleted = 0;
- long long addition = 0;
- while(k>=st[addition]){
- k-=st[addition];
- addition++;
- ans.push_back(mx-del-st[ptr]);
- deleted+=st[ptr];
- ptr++;
- }
- del+=deleted;
- }
- cout<<ans.size()<<"\n";
- for(auto t:ans) cout<<t<<" ";
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement