【题解】二进制

题目大意 

  有三个整数$A$、$B$、$C$,以下用$N_{(2)}$表示$N$的二进制(没有前导$0$)。

  设$A_{(2)}$、$B_{(2)}$、$C_{(2)}$的最大长度为$L$($L \leqslant 30$),你需要构造三个正整数$X$、$Y$、$Z$,满足以下条件:

  (1)$ X_{(2)}$、$Y_{(2)}$、$Z_{(2)}$的长度都不超过$L$。

  (2) $A_{(2)}$与$X_{(2)}$中$1$的个数相同。

  (3) $B_{(2)}$与$Y_{(2)}$中$1$的个数相同。

  (4) $C_{(2)}$与$Z_{(2)}$中$1$的个数相同。

  (5) $X+Y=Z.$。

  给你$A$,$B$,$C$,你需要求出最小的满足条件的$Z$。如果不存在满足条件的$Z$,那么输出$-1$。

题解

  

猜你喜欢

转载自www.cnblogs.com/kcn999/p/11272676.html