n=eval(input()) #用n输入列表的长度 a=list(map(eval,list(input()))) #用一个列表来读取输入的数组 s=sum(a) #求出输入列表所有数的和 #此题的思路基于几个基本条件: #1.若能求出组数k,则 s%k==0 #2.列表能被分为连续的几段和为 s/k 的子段,所有一旦有子段不相等即不符合条件 #基于以上我的思路是: #从 n 开始枚举组数,看组数是否能满足条件。 #若该组数不能满足条件即退出,若能满足条件则输出,若没有满足条件的组数则输出-1。 for i in range(n,1,-1): if s%i==0: t=s/i s1=0 flag=1 for j in range(n): s1+=a[j] if s1==t: s1=0 elif s1>t: flag=0 break; if flag: print(i) break if i==2: print(-1)