求助,为何只有两个点AC?

P7071 [CSP-J2020] 优秀的拆分

```cpp while(n!=0) { if(n&1) { num[++tmp]=pow(2,tmp); } n>>=1; } ``` n&1==1表示n是奇数,然而很显然n是偶数的时候才可以
by donghanwen1225 @ 2020-11-08 20:33:20


@[Akemi·Homura](/user/356081) tmp是加的数字的个数,所以$a[tmp]$并不一定$2^{tmp}$
by w23c3c3 @ 2020-11-08 20:36:51


@[donghanwen1225](/user/153687) 前面特判了的,这里偶数就直接移位了,不会影响输出结果的
by Night_7d5 @ 2020-11-08 20:37:00


@[w23c3c3](/user/109942) 强啊大佬%%%
by Night_7d5 @ 2020-11-08 20:38:41


@[Akemi·Homura](/user/356081) 话说你为什么要用$pow$啊
by Argon_Cube @ 2020-11-08 20:43:57


我裂开来,tmp++要是放对位置就AC了啊
by Night_7d5 @ 2020-11-08 20:49:54


|