A题
有没有大神帮忙看看错在那里 通过率92%。
#include
c++.h>
using
namespace std;
int main()
{
ios::sync_with_stdio(
0);
cin.tie(
0);
int n;
cin >> n;
string ss;
cin >> ss;
int len =
0;
for (
int i =
0; i < n; i++)
{
len = len + (ss[i] -
'0');
}
int copy = len;
if (len ==
0)
{
cout << n << endl;
return
0;
}
else
{
for (
int k =
1; k * k <= len; k++)
{
if (len % k ==
0)
{
for (
int z =
1; z <=
2; z++)
{
int kp=
0;
if(z==
1)
{
kp=k;
}
else
if(z==
2)
{
if(k==
1)
break;
if(len/k!=k)
{
kp=len/k;
}
else
break;
}
int tt =
0;
int flag =
1;
for (
int i =
0; i < n; i++)
{
tt = tt + (ss[i] -
'0');
if (tt == kp)
{
tt =
0;
}
else
if (tt > kp)
{
flag =
0;
break;
}
}
if (flag ==
1)
{
cout << copy / kp << endl;
return
0;
}
}
}
}
}
cout << -
1 << endl;
return
0;
}
0条回帖
回帖