题意: 给你一个字符串,然后让你尽可能多的去分解这个字符串 使得每一个分解出来的子串的和都是3的倍数

思路: 同余

对于单独的一个数字而言 如果是三的倍数 则 ans++

否则 去考虑连续的两个数字  如果是 则 ans++

否则 考虑连续的三个数字

如果第三个数字本身就是3的倍数  则ans++

如果第三个数字不是3的倍数 那对于前两个数字x y 来说

x y 对3求余只有两种情况 [1,1] [2,2] 不可能是[2,1],[1,2]这两个 因为如果是后面这两个情况的话 那x+y就是3的倍数 因为(1+2)%3=0

对于前两种情况 第三个数字对3取余的可能性有3中 0 1 2

0: 本身就是3的倍数 ans++

1: 1 1 1 取全部 是三的倍数  2 2 1  取后面的两个   所以 一定能找到一个和是3的倍数

2: 1 1 2 取后面两个  2 2 2 取全部   同理

所以 对于n=3的时候 一定可以找到

#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
#define ll long long
using namespace std;
const int N = 2e5+10;
char str[N];
int main() {while(~scanf("%s", str)){int len = strlen(str);int ans = 0, tmp = 0, sum = 0, n = 0;for(int i = 0; i < len; i ++) {tmp = (str[i]-'0') % 3;sum += tmp;n++;if(tmp == 0 || sum%3==0 || n == 3) {ans++;sum = n = 0;}}cout << ans << endl;}return 0;
}

CodeForces1005D - Polycarp and Div 3相关推荐

  1. Codeforces 1005D Polycarp and Div 3

    Codeforces 1005D Polycarp and Div 3 dp[i]表示前i个数最多能分成多少块%3为0,nxt[x]表示x这个上一次出现的位置. 首先想到 $ dp[i] = max( ...

  2. Codeforces Round #496 (Div. 3)【未完结】

    2022.3.5 题目地址:https://codeforces.com/contest/1005 目录 A. Tanya and Stairways[找规律] B. Delete from the ...

  3. LSNU寒假集训 题解

    目录 LSNU寒假第一场(基础算法+几何) A - Fifa and Fafa B - Anton and Lines C - Minimum path D - Thematic Contests E ...

  4. Codeforces Round #734 (Div. 3) 题解

    Hello大家好,今天给大家带来的是 Codeforces Round #734 (Div. 3) 的全题目讲解. 本文链接:https://www.lanqiao.cn/questions/2040 ...

  5. Codeforces Round #739 (Div. 3)(AK实况)

    Codeforces Round #739 (Div. 3) A. Dislike of Threes 找到第kkk个既不是333的倍数,个位数上也不是333的数,也已预处理然后O(1)O(1)O(1 ...

  6. Codeforces Round #434 (Div. 2)【A、B、C、D】

    Codeforces Round #434 (Div. 2) codeforces 858A. k-rounding[水] 题意:已知n和k,求n的最小倍数x,要求x后缀至少有k个0. 题解:答案就是 ...

  7. Codeforces Round #756 (Div. 3)

    Codeforces Round #756 (Div. 3) A. Make Even 思路:如果末尾是偶数,不需要操作:如果开头是偶数,一次操作,即全翻转:如果开头和末尾都是 奇数,判断里面是否有偶 ...

  8. Codeforces Round #739 (Div. 3) ABCDEF1F2 解题思路

    Codeforces Round #739 (Div. 3) 可能是一开始大佬都写F1去了,我在D写完后发现F过的人数比E多了好多(个位数与十位数),以为F1比较简单,就直接开F1了,但自己分类讨论老 ...

  9. Codeforces Round 1133(Div.3)题解

    A 思路 做法显然,但是需要注意一些小的细节: ①不能输出如"2:2"这样的时间,必须输出"02:02"这样的时间: ②中间的冒号是":", ...

  10. Codeforces Round #644 (Div. 3) D.Buying Shovels

    Codeforces Round #644 (Div. 3) D.Buying Shovels 题目链接 Polycarp wants to buy exactly n shovels. The sh ...

最新文章

  1. 纳米片晶体管是摩尔定律的下一步,也许是最后一步!
  2. 【竞赛总结】传染病的传播趋势预测
  3. Winform 打包 混淆 自动更新
  4. EL表达式的作用与限制条件
  5. mysql根据idb还原数据_mysql通过idb文件,恢复数据库
  6. 实现pv uv统计_聊聊前端监控(二)--行为监控的技术实现
  7. 堆积柱形图显示总数_送你一份堆积柱形图小点心,请收下~
  8. flex发布的release程序要配release的Flash Player,速度飞快!如果有一方是debug版本的,速度就降下来了,要注意!...
  9. ngrok跟小米球的使用
  10. 高等数学(第七版)同济大学 习题1-10 个人解答
  11. 关于谷歌webrtc源码国内镜像的使用问题,以及Kurento媒体服务器
  12. 教养,就是要让别人舒服
  13. SAP中状态参数文件最高状态和最低状态的理解
  14. Java语言西安交大高起专_2018年西安交大网络学院高起专/本英语入学考试复习题...
  15. 计算机Excel删除和清除,电脑EXCEL表格一次删除所有空行的两种方法
  16. 怎么将计算机桌面全部变成英文翻译,Word2010怎样将英文翻译成中文
  17. 苏黎世联邦理工计算机科学,苏黎世联邦理工学院的计算机科学界人士在编程语言领域取得了重要突破...
  18. 机器学习应该准备哪些数学预备知识?
  19. 27.python-网路-tcp
  20. “网站处于联机状态,但未对连接尝试做出响应解决方案”解决方案

热门文章

  1. 数据库操作之整合Mybaties和事务讲解 5节课
  2. 笔记 Activator.CreateInstance(Type)
  3. ExtJS4.2学习(18)时间控件
  4. Web 前端开发精华文章推荐(jQuery、HTML5、CSS3)【系列十四】
  5. 微软 .NET 俱乐部在线发布会
  6. EditPlus 4.3.2583 中文版已经发布
  7. 个人作业——软件工程实践总结作业(待续)
  8. finedb(内置的HSQL数据库)迁移数据到MySQL
  9. Python原理 -- 深浅拷贝
  10. grub4dos初级教程-入门篇(Z)