CF 1025C Plasticine zebra

昨晚忘记判只有一个字符的情况fst了呜呜呜

挺有趣的题,昨晚连刚带猜弄出结论

考虑答案的取值,最优答案可能是一个后缀,或者是一个前缀,或者是一个后缀加上前缀

那么翻转之后最优答案的可选值就有了1的前缀+n的后缀

对于一个合法的zebra串,无论怎么翻转都不会影响他的取值,所以预处理一遍扫过去找答案即可。

强烈谴责CF昨晚的数学大赛pretest数据太水

Code:

#include <cstdio>
#include <cstring>
using namespace std;const int N = 1e5 + 5;int n, a[N], suml[N], sumr[N];
char s[N];inline int max(int x, int y) {return x > y ? x : y;
}inline int min(int x, int y) {return x > y ? y : x;
}int main() {scanf("%s", s + 1);n = strlen(s + 1);for(int i = 1; i <= n; i++) a[i] = s[i] - '0';for(int i = 1; i <= n; i++) if(a[i] != a[i - 1]) sumr[i] = sumr[i - 1] + 1;else sumr[i] = 1;for(int i = n; i >= 1; i--)if(a[i] != a[i + 1]) suml[i] = suml[i + 1] + 1;else suml[i] = 1;int ans = 0;for(int i = 1; i < n; i++) {if(a[i] != a[i + 1]) ans = max(sumr[i] + suml[i + 1], ans);if(a[1] != a[n]) ans = max(min(sumr[n], n - i) + min(suml[1], i), ans);ans = max(ans, suml[i]);ans = max(ans, sumr[i + 1]);}printf("%d\n", max(ans, 1));return 0;
}
View Code

 

转载于:https://www.cnblogs.com/CzxingcHen/p/9503685.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/465202.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

嵌入式|这些年我都是怎么找兼职的?

‍‍‍‍1这篇文章是在上一篇文章之后写的&#xff0c;因为上篇文章写到了嵌入式找兼职的一些坑&#xff0c;下面有同学留言说要怎么找到兼职项目&#xff0c;所以这篇文章会写一些我的兼职经历还有总结建议&#xff0c;希望对大家如何找兼职有一些帮助。这篇文章是写第二次了&…

WCF 第五章 行为 实现事务(操作行为)

有两个场景一般用作事务的参考。多步骤商业过程是典型跨度分&#xff0c;天&#xff0c;月的长时间运行过程。它们可以涉及多个组织和基于人的工作流。短期运行事务是那些在几秒钟完成并很少有外部依赖的商业操作。尽管它们都有定义的很好的接口和确定的工作流&#xff0c;它们…

linux java的启动内存溢出,java - Java的R代码可在Linux上运行,但不能在Windows中运行 - 堆栈内存溢出...

我在做什么&#xff1f;我正在用Java编写一个数据分析程序&#xff0c;该程序依赖R的arulesViz库来挖掘关联规则。我想要什么&#xff1f;我的目的是将规则存储在Java中的String变量中&#xff0c;以便以后进行处理。它是如何工作的&#xff1f;该代码分别使用String.format和e…

这届毕业生薪资高,是真的

‍‍‍‍最近一份校招的薪资上了知乎的热搜榜。大家想查薪资的&#xff0c;可以用这个微信小程序offershow>查薪资的小程序<可以看到这个小程序可以查到的企业还挺多的&#xff0c;方便大家在选择工作谈薪资的时候做下参考。额&#xff0c;我这篇文章不是为了介绍这个小程…

心得 : 面向对象和面向过程的区别【分享】

面向对象&#xff1a;用线性的思维。与面向过程相辅相成。在软件开发过程中&#xff0c;宏观上&#xff0c;用面向对象来把握事物间复杂的关系&#xff0c;分析系统。微观上&#xff0c;仍然使用面向过程。 “面向过程”是一种是事件为中心的编程思想。就是分析出解决问题所需的…

linux 系统监控脚本

Linux下性能预警及应急处理 自己编写一个脚本程序&#xff0c;该程序在工作时段&#xff08;8&#xff1a;00-22&#xff1a;00&#xff09;&#xff0c;每隔一个小时执行一次&#xff1b;在其他时段每隔两小时执行一次。 每次执行都要完成如下任务&#xff1a; 1、检测进程CPU…

这辆迷你摩托车,很酷!

摘要&#xff1a;平衡小车大家应该见到过很多了&#xff0c;比如最有名的要数野生钢铁侠稚晖君的自行车平衡小车了。那个玩意太高级一般人做不出来&#xff0c;作为学生或者DIY爱好者做一辆小型的mini平衡小车还是可以实现的。随着16届恩智浦杯全国大学生智能汽车大赛新增单车拉…

自测题

什么是硬件&#xff1f;什么是软件&#xff1f; 硬件是看得见摸得着东西&#xff0c;软件是数据程序 电脑常见的硬件有&#xff1a;主板、机箱、CPU、内存条、硬盘、光驱、显示器、键盘、鼠标等&#xff1b; 电脑的软件有很多&#xff0c;像windows系统&#xff0c;office系列…

linux errno 线程,Linux errno 错误对照表

errno 在 中定义&#xff0c;错误 Exx 的宏定义在 /usr/include/asm-generic 文件夹下面的 errno-base.h 和 errno.h&#xff0c;分别定义了 1-34 、35-132 的错误定义。strerror() 函数依据 errno 值返回错误描述字符串&#xff0c;下面程序打印对照表&#xff1a;Code highli…

如何当好独立CIO(1)

如何当好独立CIO(1)出处:信息方略 文: 刘少东 评论( 0 )条 论坛 博客导读&#xff1a;独立CIO一般有比较丰富的信息化管理经历&#xff0c;具有新的想法和思路&#xff0c;视野也更加开阔&#xff0c;能够以局外人的身份冷静、客观地分析企业战略&#xff1b;同时&#xff0c;这…

提高单片机设计的10个细节

前言1 干扰对单片机应用系统的影响1.1测量数据误差加大1.2 控制系统失灵1.3 影响单片机RAM存储器和E2PROM等1.4 程序运行失常2 如何提高我们设备的抗干扰能力2.1 解决来自电源端的干扰2.2 模拟信号采样抗干扰技术2.3 数字信号传输通道的抗干扰技术2.4 硬件监控电路2.5 PCB电路合…

bzoj 2653 洛谷 P2839 [国家集训队] middle

2653: middle Time Limit: 20 Sec Memory Limit: 512 MBSubmit: 2381 Solved: 1340[Submit][Status][Discuss]Description 一个长度为n的序列a&#xff0c;设其排过序之后为b&#xff0c;其中位数定义为b[n/2]&#xff0c;其中a,b从0开始标号,除法取下整。给你一个长度为n的序…

linux统计单拷贝基因家族,为什么要进行基因家族分析?

原标题&#xff1a;为什么要进行基因家族分析&#xff1f;某物种基因组被测序后&#xff0c;大部分课题组都会发表一些基因家族分析的文章&#xff0c;此举常常被误解为“灌水”&#xff0c;其实不然&#xff0c;理清基因组内基因家族成员分类组成&#xff0c;是挖掘和物种特性…

童继龙:论ERP顾问的创新分享与专业精神

童继龙&#xff1a;论ERP顾问的创新分享与专业精神出处:51CTO博客 文: 童继龙 评论( 0 )条 论坛 博客导读&#xff1a;公司的核心价值观中有一部分为“持续创新”&#xff0c;对实施同事的行为态度考核中有两项为“创新分享”和“专业精神”&#xff0c;因为上海实施部的新同事…

图解分析 Linux 网络包发送过程

大家好&#xff0c;下面的文章转发一个鹅厂同学的文章&#xff0c;这篇文章从应用到内核&#xff0c;写的非常不错&#xff0c;希望大家分析某个技术也可以从这方面入手。-----大家好&#xff0c;我是飞哥!半年前我以源码的方式描述了网络包的接收过程。之后不断有粉丝提醒我还…

linux下shell编程课程设计,Linux下shell编程实例

1. 推断一文件是不是块或字符设备文件。假设是将其复制到 /dev 文件夹下read -p "input a file:" filenameif [ -b $filename -o -c $filename ]thencp $filename /dev/fi2.编写一个脚本。进行简单的减法运算。要求提示输入变量#!/bin/bashread -p "input a num…

[Pku 2774] 字符串(六) {后缀数组的构造}

{ 从这一篇开始介绍后缀数组 一个强大的字符串处理工具 可以先研读罗穗骞的论文 后缀数组——处理字符串的有力工具 再行阅读本文 本文仅作参考和补充 } 字符串的后缀很好理解 譬如对于字符串"aabaaaab" 后缀有{"b","ab","aab","…

使用ReflectionToStringBuilder实现toString方法

org.apache.commons.lang.builder.ReflectionToStringBuilder是commons-lang里的一个类。 import org.apache.commons.lang3.builder.ReflectionToStringBuilder; Overridepublic String toString() {return ReflectionToStringBuilder.toString(this); } 如果需要排除某些字段…

linux下I2C驱动发送IO时序,笔记四:linux下IO口模拟实现I2C协议

一、i2c总线是什么&#xff1f;1、i2c总线是一种物理总线及实实在在的总线&#xff0c;通过板子pcb等图能看到。2、i2c总线是一种主从结构。3、i2c总线是一种通信协议。4、i2c总线是两线制半双工串行总线&#xff1a;两线制&#xff1a;数据线(SDA)——>数据传输、时钟线(SC…

rails3异步发邮件

actionmailer 3.0 结合ar_mailer_rails3 异步发送邮件3 次投票jerry 分享于 3 个月 前, 0 条回复, 244 次浏览Share|actionmailer 3.0 的用法有所改进&#xff0c;并结合ar_mailer_rails3做异步邮件的发送&#xff0c;是比较方便的一种选择&#xff0c;把邮件都交给后台任务来发…