思路显然是暴力枚举. 但是两个问题: 1.当1的位数非常大时,模运算很费时间,会超时. 其实每次不用完全用'11111...'来%K,上一次的余数*10+1后再%K就行. 证明: 令f(n)=111111...(n个1); g(n)=f(n)%K 因为f(n)=f(n-1)*10+1 所以f(n)%K=(f(n-1)*10+1)%K 即g(n)=g(n-1)*10+1 2.枚举何时停止? 一种方法是可以设置一个大数,比如10的6次方,可以Accepted. 更精确的方法是:从1个1到K个1,如果…