B - 等分数字串

HihoCoder - 1847

给定一个只包含0-9的字符串S,请你判断能否将S划分为两个或两个以上连续的子串,使得每一个子串中的数字总和都相等。

Input

输入包含多组数据。

第一行包含一个整数N,代表数据组数。

以下N行,每行包含一个字符串S。

对于50%的数据,2 ≤ |S| ≤ 100

对于100%的数据,1 ≤ N ≤ 5, 2 ≤ |S| ≤ 100000

Output

对于每组数据,输出一行,内容是YES或者NO,代表是否存在题目要求的划分方案。

Sample Input

3
1248
2680
54174760

Sample Output

NO
YES
YES
#include<iostream>
#include<stdio.h>
#include<cstring>
#include<cmath>
#define show(a) cout<<#a<<"="<<a<<endl
#define MAXN 1005
using namespace std;int prime(int x)
{for(int i=2; i<sqrt(x)+1; i++){if(x%i==0) return i;}return 0;
}int main()
{int num;scanf("%d",&num);for(int  i=0; i<num; i++){string s;cin>>s;//cout<<s.length()<<endl;int sum=0,maxn=0;for(int i=0; i<s.length(); i++){sum+=s[i]-'0';maxn=max(maxn,s[i]-'0');}int now=(prime(sum)==0?1:sum/prime(sum)),group;while(now>=maxn){//show(now);int cnt=0;group=0;int i;for(i=0; i<s.length(); i++){cnt+=s[i]-'0';//show(cnt);if(cnt==now){cnt=0;group++;}if(cnt>now)break;}if(sum==group*now&&group>1){break;}now--;while(now>0&&sum%now!=0){now--;}}if(s.length()>1&&now>=maxn)cout<<"YES\n";elsecout<<"NO\n";}
}

HihoCoder - 1847相关推荐

  1. N - Tram POJ - 1847

    N - Tram POJ - 1847 题意: 从一个点出发,可以到达若干个点,到第一个点的边权为0,到其他点的边权为1,到不了为 inf ,求从起点到终点的最短路. #include<iost ...

  2. hihoCoder 网络流四·最小路径覆盖

    题面带解释 hihoCoder感觉很好. 网络流的精华就是建图 #include<cstdio> #include<iostream> #include<algorith ...

  3. hihoCoder #1142 : 三分求极值

    #1142 : 三分·三分求极值 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 这一次我们就简单一点了,题目在此: 在直角坐标系中有一条抛物线y=ax^2+bx+c和一 ...

  4. hihocoder 后缀自动机专题

    一.后缀自动机基本概念的理解 1.首先后缀自动机的状态是由子串的endpos来决定的 子串的endpos是指一个子串可以在原字符串的哪些位置进行匹配, endpos构成的不同集合划分成不同的状态 关于 ...

  5. hihoCoder 1051 补提交卡(贪心,枚举)

    #1051 : 补提交卡 时间限制:2000ms 单点时限:1000ms 内存限制:256MB 描述 小Ho给自己定了一个宏伟的目标:连续100天每天坚持在hihoCoder上提交一个程序.100天过 ...

  6. hihoCoder week3 KMP算法

    题目链接 https://hihocoder.com/contest/hiho3/problems kmp算法 #include <bits/stdc++.h> using namespa ...

  7. hihoCoder 第136周 优化延迟(二分答案+手写堆)

    题目1 : 优化延迟 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 小Ho编写了一个处理数据包的程序.程序的输入是一个包含N个数据包的序列.每个数据包根据其重要程度不同 ...

  8. hihoCoder 1578 Visiting Peking University 【贪心】 (ACM-ICPC国际大学生程序设计竞赛北京赛区(2017)网络赛)...

    #1578 : Visiting Peking University 时间限制:1000ms 单点时限:1000ms 内存限制:256MB 描述 Ming is going to travel for ...

  9. hihoCoder太阁最新面经算法竞赛18

    比赛链接:http://hihocoder.com/contest/hihointerview27/problems A.Big Plus 模拟水 1 #include <bits/stdc++ ...

最新文章

  1. iOS 十六进制的颜色值转换为UIColor
  2. kmeans实际应用例子 java_k-means聚类JAVA实例
  3. android多线程的本质,[原创]分析unidbg(unidbgMutil)多线程机制
  4. 萌新的Linux的学习之路(十) --ip设置管理
  5. java面向对相取钱存钱_java面向对象(银行存款业务无客户)
  6. 在边缘,作为网关或在网格中构建控制平面以管理Envoy代理的指南
  7. select函数_SQL高级功能:窗口函数
  8. Spring(1)-IOC
  9. 4万家公司没了!这个吸血房客的行业,终于要崩了?
  10. mkdir 与mkdir -p 区别
  11. 做了5年程序员才明白,这项能力原来这么重要
  12. houdini 做选点效果
  13. 【linux驱动分析】misc设备驱动
  14. jni数组使用(一)
  15. [20170516]nvl与非NULL约束.txt
  16. jdk版本和java版本一样吗_jdk版本查看,以及java -version 和JAVA_HOME不一致问题
  17. 计算机右键管理删除,【win7右键菜单管理】右键菜单的设置及清除
  18. 桌面版 Linux 为什么打不过 Windows?Linus 现身说法!
  19. 【总结】1298- 如何用油猴提升前端开发效率
  20. 基于JavaScript的餐厅点餐系统微信小程序的设计与实现

热门文章

  1. 学习《Redis设计与实现》Chapter1
  2. IDT发布ZEN 或 TAO 双淬灭探针
  3. 112家IT公司薪水一览表
  4. 第19篇 基础(十九)详解QVector(数组)
  5. Java --- JVM动态链接与方法调用
  6. 央企建筑公司数字化转型怎么做
  7. python解码gbk_Python的url编码问题(ansi,utf8,gbk) | C/C++程序员之家
  8. 框架:什么是框架?为什么要使用框架?框架有什么作用
  9. 基于OLT(实体、关系、标签)建模方法论的最佳实践 | StartDT Tech Lab 08
  10. 网络设备配置与管理,校园网规划