先给出比赛链接: https://ac.nowcoder.com/acm/contest/86639 A 造数 题目问多少次操作可以把0转为n 操作共有三种 能够发现操作的数字最大是2,那么这题就可以考虑二进制。三种操作就能这么理解: 那么我们就能把n转成2进制来求值 以n = 5为例 可以发现,当当前位置为0时只需要1次操作就能填好这一位,当当前位置为1时则需要2次操作来填好这一位。 所以我们只需要把n转成二进制01串,然后遍历这个01串(注意不用遍历最高位,因为大于2时最优策略肯定是刚开始先+2)答案加上当前位再加1就行。(注意n为1时需要特判答案为1,为0时则不需...