在Python中被K整除的最小整数
假设我们有一个正整数K,我们需要找到最小的正整数N,使得N可以被K整除,并且N仅包含数字1。我们必须找到N的长度。如果没有这样的N,则返回-1。因此,如果输入为3,则输出为3。最小的答案为N=111。
为了解决这个问题,我们将遵循以下步骤-
如果k为偶数,或者k可被5整除,则返回-1
设置r:=0和N=1
当我在1到K+1的范围内
r:=(r*10+1)modk
如果r=0,则返回i
让我们看下面的实现以更好地理解-
示例
class Solution(object):
def smallestRepunitDivByK(self, K):
if K%2==0 or K%5 ==0:
return -1
r = 0
N=1
for i in range(1,K+1):
r = (r*10 + 1)%K
if r == 0:
return i
ob = Solution()print(ob.smallestRepunitDivByK(11))输入值
11
输出结果
2
热门推荐
10 毛笔哥哥结婚祝福语简短
11 向国庆送祝福语简短
12 建队节祝福语简短
13 朋友喜得外孙简短祝福语
14 小店营业的祝福语简短
15 餐饮生日祝福语简短独特
16 鲜花英语祝福语卡片简短
17 男朋友暴富祝福语简短
18 婶婶拜年祝福语大全简短