Codeforces Round #855 (Div. 3) A-E
传送门
A. Is It a Cat?
题意
给你一个只有英文字母的字符串,问你这个字符串是否由连续的’m’, ‘e’, ‘o’,‘w’,(顺序不能改变)构成,并且不区分大小写。
如: “meow”, “mmmEeOWww”, “MeOooOw” 是符合要求的, 但是 “Mweo”, “MeO”, “moew”, “MmEW”, "meowmeow"是不符合的
思路
对于不同的字符串直接加入到新字符串中,然后和“MEOW”对比是否一致即可,记得大小写一致。
代码
void slove( )
{int t;cin>>n;string s;//meowcin>>s;bool st1=0,st2=0,st3=0,st4=0,st5=0;for(int i =0;i<n;i++){if(s[i]>='a')s[i]-=('a'-'A');}string a;for(int i=0;i<n;i++){if(s[i]!=s[i+1])a+=s[i];} if(a=="MEOW")cout<<"YES\n";else cout<<"NO\n";
B. Count the Number of Pairs
题意
给你一个只有英文字母的字符串s,如果两个满足字符满足大小写关系,那么就说明他们是配对的。每对成功配对后的字符不可重复配对。给你一个k,你可以对任意字符进行大小写交换操作(最多k次),问你这个字符串最多有多少个配对。
思路
用map存储每一个字符出现的次数,然后先加上大小写共有的字符数量,然后再根据k的值进行操作即可。
代码
void slove( )
{int k;cin>>n>>k;string a;cin>>a;map<int,int>q;for(int i =0;i<n;i++)q[a[i]]++;int res=0;for(int i ='a';i<='z';i++){int l=i-('a'-'A');if(q[i]<q[l])swap(q[i],q[l]);res+=q[l];if(k){res+=min((q[i]-q[l])/2,k);k-=min((q[i]-q[l])/2,k);}} cout<<res;cout<<endl;
}
C2/c1. Powering the Hero (hard version)
题意
按顺序给你n张卡牌,这些卡牌分为两类:力量牌和角色牌。对于力量牌,你可以把它放在你的力量牌顶:对于角色牌(初始力量为0),你可以消耗最上方的力量牌排融入其中。问你他的所有角色的力量和的最大值是多少?
思路
对于每一张角色牌时,他能获得的最大力量值就是他前面的最大的一张力量排,那么可以直接用优先队列去对力量值进行排序然后取值即可。
void slove( )
{cin>>n;for(int i =1;i<=n;i++)cin>>stt[i];ll res=0,k=0;priority_queue <int,vector<int>,less<int> >q;for(int i =1;i<=n;i++){if(stt[i]!=0)q.push(stt[i]);else if(q.size()) {res+=q.top();q.pop();}}cout<<rescout<<endl;
}
D. Remove Two Letters
题意
给你一个长度为n的小写字符串,问你任意去除两个相邻的字符串之后,不同的字符串的种类有多少
思路
一眼我是STL大神, 直接map存字符串结果荣获mle5
可以用字符串哈希,但是这道题明显有更简单的方法。首先
如果考虑最优情况,最多的不同的字符串种类肯定是n-1种,那么在此前提下我们去找相同的情况:
因为由样例“ababa”可以发现
如果s[i]==s[i+2],那么两次删除的字符串是相同的,那么直接遍历一遍如果存在就ans–,最后直接输出即可。
代码
void slove( )
{int t;cin>>n;cin>>a;int sum=n-1;for(int i =0;i<n;i++){if(a[i]==a[i+2]&&i+2<n)sum--;}cout<<sum;cout<<endl;
}
E2/E1 Unforgivable Curse (hard version)
题意
给你两个长度为n的只有英文的字符串a,b,然后给你一个k,你可以使si和s(i+k)或者si和s(i+k+1)交换,问你能否通过任意次交换,使得a,b字符串相等。
思路
假设是长度为(k+1)的字符串,那么就只能对于s1和s(1+k)进行交换,那么此时看换之前和换之后如果满足条件,否则无论怎么都满足不了
那么如果是小于(k+1)长度的字符串呢:那么这种字符串就是完全不能交换,即如果开始能满足就是YES,不能为NO。
如果是大于(k+1)长度的,那么从k+1开始看起,当n=k+2时,能任意交换的数字有开头两个和结尾两个,长度每次加1,能任意交换的数字就+2(末尾和不能交换的数字的最左边)(
例:abcdef 和k为4,那么能够任意交换的字符为abef,如果n为abcdefg,那么能够任意交换的字符为abcefg),
那么可以取这部分范围内不可交换的字串判断一下如果相等也是可以交换的;直到n为2*k的时候,所有的字符都可以任意交换。
代码
void slove()
{int k;cin>>n>>k;string a, b;cin >> a >> b;map<int, int> p, q;for (int i = 0; i < n; i++)q[a[i]]++, p[b[i]]++;for (int i = 0; i < n; i++){if (q[a[i]] != p[a[i]]){cout << "NO\n";return;}}if (a == b||k==1){cout << "YES\n";return;}if(n<k+1)cout<<"NO\n";else if(n==k+1){swap(a[0],a[n-1]);if(a==b)cout<<"YES\n";else cout<<"NO\n";}else if(n>=2*k) cout<<"YES\n";else{a=a.substr(n-k,2*k-n);b=b.substr(n-k,2*k-n);if(a==b)cout<<"YES\n";else cout<<"NO\n";}
}
总结:感觉这一场打的还行,d题也没有特别的无脑wa(但是下次还可以少wa点),e的思路差不多都有了,但是写出d后没那么多想法了就有点水群,以后要记得全力以赴!!!
相关文章:
Codeforces Round #855 (Div. 3) A-E
传送门 A. Is It a Cat? 题意 给你一个只有英文字母的字符串,问你这个字符串是否由连续的’m’, ‘e’, ‘o’,‘w’,(顺序不能改变)构成,并且不区分大小写。 如: “meow”, “mmmEeOWww”, “MeOooOw” 是符合要求…...
3/3操作系统作业
目录 1.前趋图和程序执行 (1)前驱图 (2)程序的顺序执行 (3)程序的并发执行 2.进程的描述 (1)进程的定义与特征 编辑编辑(2)进程控制块编辑 &…...
「C/C++」 标准文件操作大全
一、设备文件(运行程序时会默认打开这三个设备文件) stdin:标准输入,默认为当前终端(键盘),我们使用的scanf、getchar函数默认从此终端获得数据。stdout: 标准输出,默认…...
一款SAST工具需要支持多少种编译器呢?
除了Java语言,C#语言之外,C、C语言是编译器类型最多的编程语言,有几十种编译器,这些编译器方言为研发SAST工具带来了巨大的工作量,很多产品由于无法适配客户的编译器,导致无法检测。下面我们罗列一下国外和…...
jvm mat分析dump文件
jvm调优中,经常使用dump来分析是否存在大对象导致频繁full gc,以下为使用步骤: 一、获得服务进程 ps -ef | grep list-app | grep -v grep 二、生成dump文件 jmap -dump:formatb,filexxx.dump pid jmap -dump:filetest.hprof,formatb 3307…...
python16行代码获取原神全角色+全语音
前言 大家早好、午好、晚好吖 ❤ ~欢迎光临本文章 本来是不玩原神的,但是实在是经不住双重诱惑呀~ 毕竟谁能拒绝角色风景超级好看又可以爬树、炸鱼、壶里造房子、抓小动物、躲猫猫的游戏捏~ 今天点进官网~角色得配音让我沉陷其中,于是 我决定把他们爬…...
链接投票二维码制作制作投票链接视频选举投票制作
关于微信投票,我们现在用的最多的就是小程序投票,今天的网络投票,在这里会教大家如何用“活动星投票”小程序来进行投票。我们现在要以“信赖挚友”为主题进行一次投票活动,我们可以在在微信小程序搜索,“活动星投票”…...
HTTP 协议
HTTP(hypertext transport Protocol);超文本传输协议,是浏览器与万维网服务器之间通信的规则。 规定了客户端与服务端之间互相发送内容的格式,客户端发给服务端的叫 请求协议,服务端返回给客户端的为 响应…...
公司新招了个人,一副毛头小子的样儿,哪想到是新一代卷王····
内卷,是现在热度非常高的一个词汇,随着热度不断攀升,隐隐到了“万物皆可卷”的程度。 在程序员职场上,什么样的人最让人反感呢? 是技术不好的人吗?并不是。技术不好的同事,我们可以帮他。 是技术太强的人吗?也不是…...
TSDF学习记录
【唐宇迪】三维重建-TSDF通俗解读 人工智能入门教程 水泡动画模拟(Marching Cubes) - 算法小丑 - 博客园 (cnblogs.com) TSDF 流程分析 首先需要构建一大块空区域采用体素网格来存储该区域需要计算每个体素的TSDF值及其权重 原理简述 SDF值&#x…...
【Linux】孤儿进程
在Linux中,如果子进程运行时,父进程因为某些原因先行终止,就称该子进程为孤儿进程。 我们编写如下代码: 子进程一直在运行,父进程运行一段时间后自动终止。运行该程序观察现象: 最开始时,子进程…...
ChatGPT解答:python大批量读写ini文件时,性能很低,有什么解决方法吗,给出具体的思路和实例
ChatGPT解答: python大批量读写ini文件时,性能很低,有什么解决方法吗,给出具体的思路和实例 ChatGPTDemo Based on OpenAI API (gpt-3.5-turbo). python大批量读写ini文件时,性能很低,有什么解决方法吗&…...
MySql主键id不推荐使用UUID
前言 昨天在某个技术群中,有个老哥发送了一个技术视频:讲的是一个毕业生面试被问,前后端的交互ID是使用自增的吗?为什么不使用UUID?最后的解释是说性能问题,这个引起了我的兴趣,查了一下资料总…...
密码算法(SM1、SM2、SM3、SM4、同态加密、密态计算、隐私计算和安全多方计算)
文章目录SM1 对称密码SM2 椭圆曲线公钥密码算法SM3 杂凑算法SM4 对称算法同态加密密态计算和隐私计算安全多方计算技术安全多方计算的应用场景对称加密算法非对称加密算法(公钥加密)参考文章SM1、SM2、SM3和SM4 为了保障商用密码的安全性,国家…...
保险行业中【内容行政系统】模块功能的实现
以下是一个基本的保险行业中的内容行政系统功能模块,包括对保单、理赔等方面的处理: 创建保单表创建理赔表创建保单查询视图创建理赔查询视图创建新保单更新保单状态创建理赔更新理赔状态-- 创建保单表 CREATE TABLE policies ( policy_id NUMBER PRIM…...
C语言入门知识——(7)VS2022的C语言基础调试
1、什么是bug 这个故事很多人都知道 1947年9月9日:第一个“Bug”被发现的时候:“1949年9月9日,我们晚上调试机器的时候,开着的窗户没有纱窗,机器闪烁的亮光几乎吸引来了世界上所有的虫子。果然机器故障了,…...
数据库可视化开发工具内容介绍
在现代化办公环境中,数据管理的重要性不言而喻。对于企业来说,将企业内部的数据做好规划和管理,可以给企业提升办公协作效率,为企业高层做出正确的经营决策奠定基础。本文主要给大家介绍的是数据化可视化开发工具的内容࿰…...
坚如磐石:TiDB 基于时间点的恢复(PiTR)特性优化之路丨6.5 新特性解析
本文介绍了 TiDB 数据库的基于时间点的恢复(PiTR)特性,该特性允许用户将数据库恢复到特定时间点,从而避免丢失重要数据。文章首先介绍了 PiTR 技术的基本概念和工作原理,接着探讨了 TiDB 对 PiTR 的优化,包…...
【云原生】K8S中PV和PVC
前言 容器磁盘上的文件的生命周期是短暂的,这就使得在容器中运行重要应用时会出现一些问题。首先,当容器崩溃时,kubelet 会重启它,但是容器中的文件将丢失——容器以干净的状态(镜像最初的状态)重新启动。…...
24小时稳定性爆肝测试!国内外5款远程控制软件大盘点
本文目录前言一、ToDesk远程控制二、向日葵远程控制三、RayLink四、TeamViewer五、AnyDesk总结前言 不论你的职业是什么,从事互联网工作基本就离不开远程,从远程安装系统到远程搞设计,再到做服务器的调控,都需要靠远程来协助完成…...
【Java集合框架】篇三:List接口
1. List接口及主要实现类特点 List:有序、可重复(“动态”数组);因而常常使用List替换数组,因为List 的容量是动态的。 ArrayList:底层使用Object[]存储 线程不安全,添加、查找效率高 LinkedL…...
【算法经典题集】二分(持续更新~~~)
😽PREFACE🎁欢迎各位→点赞👍 收藏⭐ 评论📝📢系列专栏:算法经典题集🔊本专栏涉及到的知识点或者题目是算法专栏的补充与应用💪种一棵树最好是十年前其次是现在二分整数二分机器人…...
【c++】2023杭州月薪个税计算(chatGPT帮忙加注释)
参考信息 杭州市的个人所得税起征点是每月5000元。 个人所得税税率标准: 1、工资范围在1-5000元之间的,包括5000元,适用个人所得税税率为0%; 2、工资范围在5000-8000元之间的,包括8000元,适用个人所得税税率为3%; 3、工…...
【TypeScript】的上手学习指南!
目录TS简介TypeScript是什么?为什么要推荐使用TypeScript生态支持安装TypeScriptTS简介 TypeScript是什么? TypeScript官网 简介:TypeScript是JavaScript类型的超集,它可以编译成纯JavaScript。TypeScript可以在任何浏览器、任何计…...
红黑树(Insert())
文章目录红黑树代码红黑树性质红黑树vsAVL树红黑树的实现Insert()情况一:如果我插入的新节点时红色的情况二:叔叔是黑色或者不存在情况三: cur红,p为红,g为黑,u不存在或者为黑-双旋检查erase()红黑树vsAVL树红黑树的应用:红黑树 二叉搜索树 …...
MOV指令使用
mov用于数据传送。之后分为目的操作数和源操作数,目的操作数必须是通用寄存器或者内存单元:源操作数可以是具有相同数据宽度的通用寄存器或者内存单元,还可以是立即数。传送指令只影响目的操作数内容,不改变源操作数内容。 如&am…...
解释一下RecyclerView的适配器内部方法
RecyclerView的适配器(Adapter) 是一个连接数据模型和RecyclerView的桥梁,它在RecyclerView中提供了数据和布局之间的连接。下面是RecyclerView适配器中常用的几个方法的解释: 1.onCreateViewHolder(ViewGroup parent, int view…...
集合框架及背后的数据结构
1.介绍: Java 集合框架,又被称为容器是定义在 java.util 包下的一组接口 interfaces 和其实现类 classes 。 其主要表现为将多个元素置于一个单元中,用于对这些元素进行快速、便捷的存储、检索 、管理 ,即平时我们俗称的增删查改…...
【强化学习】强化学习数学基础:蒙特卡洛方法
强化学习数学方法:蒙特卡洛方法举个例子举个例子1:投掷硬币The simplest MC-based RL algorithm举个例子2:Episode lengthUse data more efficientlyMC without exploring starts总结内容来源将value iteration和policy iteration方法称为mod…...
BI分析工具软件有哪些
最近发现很多人讨论BI数据分析,今天给大家全面介绍下BI数据分析相关的信息。首先给大家科普一下,什么是BI分析。 BI分析其实是指通过BI分析工具,对企业内部和外部的大量数据进行收集、整理、处理和分析,以提供有价值的洞察&#x…...
兰州新病毒的最新消息/山东关键词优化联系电话
http://ask.zealer.com/post/185 ISP是Image Signal Processor的缩写,全称是影像处理器。在相机成像的整个环节中,它负责接收感光元件(Sensor)的原始信号数据,可以理解为整个相机拍照、录像的第一步处理流程…...
帮别人做非法网站自首/百度搜索风云榜手机版
最近实施的一个项目客户的会计科目表行非常多,并且没有使用中国本地化开发的树状科目,因此需要把非末级科目的科目类型设置为“合计”,并指定合计的下级科目,一个个设置有些太浪费时间和人力了,这种工作又不方便让技术…...
陕西省住房和城乡建设厅网站/互联网销售包括哪些
拓扑图判环使用拓扑排序判断无向图和有向图中是否存在环的区别在于: 在判断无向图中是否存在环时,是将所有度 < 1 的结点入队; 在判断有向图中是否存在环时,是将所有入度 0 的结点入队。...
网站建设管理意见/谷歌浏览器下载视频
在Windows系统的云虚拟主机内访问站点时,提示如下错误。 问题原因 由于当前服务器为Windows操作系统,但是Windows操作系统不支持PHP脚本语言。 解决方案 Linux操作系统支持PHP语言,可以考虑将云虚拟主机更换为Linux操作系统...
wordpress更换icon/网店运营与推广
从网上找了很多资料,参考了如下链接,完成了一个需求:下一行的开始时间,作为上一行开始时间的结束时间。https://www.cnblogs.com/yhzh/p/6222580.html以下是自己做的,可以忽略-- 说明如下:-- 先按照设备号&…...
微商手机网站制作公司哪家好/怎样创建自己的网站
2019独角兽企业重金招聘Python工程师标准>>> 上一节介绍了Flume如何将数据收集到hdfs文件系统上。本节将分享多个agent连接配合使用。 原理图: 操作步骤: 1、将centos-aaron-h1的flume复制一份到centos-aaron-h2 sudo scp -r /home/hadoop/a…...