Advertisement
oleg_drawer

Untitled

May 1st, 2020
328
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.51 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. void solve(){
  5.   vector<int>inc;  
  6.   int N;
  7.   cin>>N;
  8.   //construct sequence 1, 2, 4, ... while sum <= N
  9.   for (int i=1;i<=N;i*=2){
  10.     inc.push_back(i);
  11.     N-=i;
  12.   }
  13.   //if sum is not N, we insert and sort
  14.   if (N>0){
  15.     inc.push_back(N);
  16.     sort(inc.begin(),inc.end());
  17.   }
  18.   cout<<inc.size()-1<<endl;
  19.   for (int i=1;i<(int)inc.size();i++)
  20.     cout<<inc[i]-inc[i-1]<<' ';
  21.   cout<<endl;
  22. }
  23.  
  24. int main(){
  25.   int t; cin>>t;
  26.   while (t--)
  27.     solve();
  28. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement