一、关键观察设第 i 步减去的数为 ai。规则要求a1=1,ai+1∈{ai,2ai}(i≥1)因此每个 ai 必然是 2 的幂,且指数序列非递减,且每一步的指数最多只能 +1。设出现的最高幂为 2k,则在序列中必有2^0,2^1,…,2^k每种至少出现一次。记 2i 出现的次数为 ci(ci≥1)。于是H=∑i=0~k{ci2^i},L=∑i=0~k{c^i}.给定正整数 H,最少需要L=⌊log2(H+1)⌋+popcount(H+1)−1次操作,即可恰好把 H 减到 0。等价地,设 s=H+1,记 bitlen(s) 为二进制位数,popc(s) 为二进制中 ...