比如说, 00011000111 和 000110001 第一个是最小表示,而第二个不是。但在你的m+k的表示中,它们并没有本质不同。 的确如你所说,如果能在O(n)时间内算出所有最小表示,那么题目就已经解决了。问题是我还不太清楚怎么算。