字串的最大因子
阿新 • • 發佈:2021-02-18
技術標籤:筆記
在一本c書上看到的練習,看得莫名其妙。
就是找出一個字串s裡的因子sample,
sample*n=s,把最大的n求出來。在python裡這都不是事,到c裡面可能要設好幾個counter。或者,你可以先用python實現,再翻譯成c。
def maxsub(s):
lns=len(s)
if lns ==0: print (0);return
if lns==1:print(1);return
else:
for i in range(1,lns//2+1):
if lns%i==0 :
smp= s[:i];
e=lns//i
j=0
'''
while j <e:
j+=1
if s[j*i:j*i+i]!=smp:
break
if j==e:
print(e);return
'''
if s. count(smp)==e:
print(s+' = ',smp+' *',e)
return
print(1)
#---------------
maxsub ('abraabraabra')