CF1030C
CF1030C
题意:
给你一个数字,问能否拆分成k段,使得每一段的每一位数字相加结果相等。
解法:
考虑数位DP。
暴力按位考虑每一位是否满足条件
CODE:
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<iostream>
using namespace std;
int n,sum;
char s[105];
int num[105];
int main() {
scanf("%d",&n);
scanf("%s",s+1);
for(int i = 1 ; i <= n ; i++) {
sum += (int)s[i] - '0';
num[i] = (int)s[i] - '0';
}
if(sum == 0) {
puts("YES");
return 0;
}
for(int i = 1 ; i <= sum ; i++) {
int now = 0 , zz = 1 , ds = 1;
while(now < i && zz <= n) {
now += num[zz];
if(now > i) break;
if(zz == n) {
if(ds >= 3 && now == 0) {
puts("YES");
return 0;
}
}
if(now == i) {
if(ds != 1 && zz == n) {
puts("YES");
return 0;
}
ds++;
now = 0;
}
zz++;
}
}
printf("NO\n");
return 0;
}
CF1030C的更多相关文章
随机推荐
- C# Unix时间戳和DateTime类型相互转换
/// <summary> /// 将Unix时间戳转换为DateTime类型时间 /// </summary> /// <param name="d" ...
- java jdbc 链接mysq 测试l 云服务器 和云数据库 mysql DB
话不多说直接上效果图 下面给出参考代码: package com.humi.db; import java.sql.Connection; import java.sql.DriverManager; ...
- [NOIP2018模拟赛10.20A]挂分报告
闲扯 先看看了B组,T1 ZROI刚好讲过一个性质原根一般很小的,直接枚举;T2一眼二分然后似乎状压 T3没看 然后上来A组题,T1 flow这名字...网络流?! T1题面非常的社会主义核心价值观, ...
- 基于【 Docker】二 || Docker的入门安装
一.前提条件 本文介绍 Docker CE 的安装使用. 目前,CentOS 仅发行版本中的内核支持 Docker. Docker 运行在 CentOS 7 上,要求系统为64位.系统内核版本为 3. ...
- 三:后台的登录注册接口(moon项目,前面有一,二)
** 项目一共有 16 个页面,是一个电商网销项目,自己在网上的某网上找的一个要做的网站的设计图: 页面主要包括: 登录页 -- 注册页 -- 首页 -- 产品列表页 -- 产品详情页 -- 会员中 ...
- web服务器端挖矿代码攻击的错误检测及排除
a)挖矿代码简要阐述: 网页中嵌入Javascript, 一旦用户打开该网站,浏览器便会按照脚本的指令变成一个门罗币挖矿机.这一段附加的挖矿代码通常因为大量占用CPU,使用户的计算机变得异常卡顿甚至无 ...
- dfs · leetcode-22.产生括号组?
题面 Given n pairs of parentheses, write a function to generate all combinations of well-formed parent ...
- MySQL增量备份与恢复实例
小量的数据库可以每天进行完整备份,因为这也用不了多少时间,但当数据库很大时,就不太可能每天进行一次完整备份了,这时候就可以使用增量备份.增量备份的原理就是使用了mysql的binlog日志. 本次操作 ...
- 07 Windows编程——窗口滚动条
两个函数:GetScrolnfo和SetScrollnfo一个结构:SCROLLINFO两个消息:WM_CREATE和WM_SIZE 滚动条结构体 typedef struct tagSCROLLIN ...
- JavaScript展开操作符(Spread operator)介绍
本文介绍JavaScript的展开操作符(Spread operator)....本文适合ES6初学者. 你可以通过展开操作符(Spread operator)...扩展一个数组对象和字符串.展开运算 ...