不知道题目有没有理解错。我的想法是:从左往右开始扫,每次让最左边的数字必须变成 0. 比如 1000110 这个 input,我们从第一位开始看,第一位是 1,那么第 1,2,3 位同时翻转,得到 0110110。然后看第二位,因为我们翻转过 1,2,3。所以第二位此时也是 1,我们翻转2,3,4 位,得到 0001110。然后第三位是 0 了,不翻转。然后第四位是 1,翻转 4,5,6,得到 0000000. 基本按照这个逻辑应该可以解出来