所以?普及组T1你想怎样
by FutureThx @ 2020-11-08 19:50:27
是的,但是我打了爆搜~~还过了~~
by rfsfreffr @ 2020-11-08 19:50:54
这题...学过多重背包的不都秒切吗
```cpp
#include<iostream>
#include<cstdio>
using namespace std;
long long n,k=1;
int main() {
//freopen("power.in","r",stdin);
//freopen("power.out","w",stdout);
cin>>n;
if(n%2!=0) {
cout<<-1<<endl;
return 0;
}
while(k<=n) k=k*2;
k=k/2;
while(n!=0) {
if(n>=k) {
cout<<k<<' ';
n-=k;
}
k=k/2;
}
cout<<endl;
//fclose(stdin);
//fclose(stdout);
return 0;
}
```
by _yjh @ 2020-11-08 19:53:41
@[_yjh](/user/222104) ???还能拿背包做 长见识了
by Enterpr1se @ 2020-11-08 19:54:53
@[_yjh](/user/222104) ???还能拿背包做 长见识了
by By_Ha @ 2020-11-08 20:03:41
@[By_Ha](/user/166274) @[W53729](/user/363523) 用到多重背包思想:任何一个正整数都可以拆成2的非负数次幂加和(当然包括0次幂)
by _yjh @ 2020-11-08 21:06:09
@[_yjh](/user/222104) 多重背包不是这么拆的吧(
by CE_WA_TLE @ 2020-11-09 08:05:41