竞赛讨论区 > 帮忙看看错在那里

帮忙看看错在那里

头像
牛客912861225号
发布于 2021-01-15 23:20:44 APP内打开
赞 0 | 收藏 0 | 回复0 | 浏览398
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== 1break;
                        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条回帖

回帖
加载中...
话题 回帖

近期热帖

等你来战

查看全部

热门推荐