牛客小白月赛111

news/2025/3/21 23:25:17/文章来源:https://www.cnblogs.com/shubei/p/18786076

牛客小白月赛111

2025.03.21

A 田忌赛马

题目简介:田忌赛马,各三个数据

思路:

主要考虑到田忌快的两个马比齐威王慢的两个马快就Yes

想到这一步就over了


B 正/邪

题目简介:这道题主要考察对题干的挖掘

注意点:正义邪恶英雄 分情况讨论

分为以下三种情况

Len=1 0->0,1->1; 无意义,不优

Len=2 00->1, 优 01->0 劣 11->1 劣

Len>2 只要有1就不优或劣,如果都是0 ,两两合1就是Len=2的情况,全部合肯定劣

综上所述,有且仅有00->1这种情况是好的,只需要进行这一步处理即可

因此,遍历字符串统计0的个数,每两个变1即可,就很easy了

for(…………)
ans+=cnt/2;

循环结束后不要忘记对最后一次进行处理


C 复读姬

题目简介:可模拟,可滑动窗口,统计撤回一条消息后的最长连续消息个数

注意点:模拟(滑窗还没学会)

1.定义一个pre数组统计该位前面的连续和,一个suf数组统计该位后面的最大连续个数

2.正序遍历统计pre,逆序遍历统计suf

pre[1]=1;  
for(int i = 2;i<=n;i++){if(s[i]==s[i-1])  pre[i]=pre[i-1]+1;else pre[i]=1;}
suf[n]=1;
for(int i = n-1;i>=1;i--){if(s[i]==s[i+1]) suf[i]=suf[i+1]+1;else suf[i]=1;}

代码贴这,注意细节

3.再次遍历找撤回消息,将左边的pre和右边的suf加起来取最大

同时还要再遍历一次不撤回消息求ans,pre,suf最大

for(int i = 2;i<=n-1;i++){if(s[i-1]==s[i+1])ans=max(ans,pre[i-1]+suf[i+1]);}for(int i =1;i<=n;i++)ans=max(ans,max(pre[i],suf[i]));

注意i的范围,题目说至多撤回一条,不要忘记遍历不撤回的情况

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

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

相关文章

Echarts-普通地图和3D地图实现

效果图实现代码 <template><div class="app"><h1>普通地图----------------</h1><div class="map-container" ref="map_ref"></div><h1>3D地图----------------</h1><div class="map-c…

Navicat Premium 16 For Mac 激活,无限试用,非破解,官网安装程序,Mac版Navicat无限试用

Navicat Premium 16 For Mac 激活,无限试用,非破解,官网安装程序,Mac版Navicat无限试用Navicat Premium是一个可多重连线资料库的管理工具,它可以让你以单一程式同时连线到 MySQL、SQLite、Oracle、MariaDB、Mssql、及 PostgreSQL 资料库,让管理不同类型的资料库更加的方…

Vue3 slot

6.9. 【slot】 1. 默认插槽父组件中:<Category title="今日热门游戏"><ul><li v-for="g in games" :key="g.id">{{ g.name }}</li></ul></Category> 子组件中:<template><div class="item&…

英语四级计划第三天

第三天 单词阅读 Smaller Museums From Niche to Mainstream “小而精”的小众博物馆,正在出圈出彩 Chinas museum boom has continued to rise, leading to increased attention and visibility for smaller but more specialized museums. 中国的博物馆热潮持续升温,导致规…

今日总结(app链接数据库的简单实现以及AI训练学习)

所花时间:145min 代码量(行):120 博客量:14 了解到的知识点: 今天又到了周五了,如同往常一样下午进行自学测试,今天是实现一个app数据库连接 在手机上进行查询显示的任务。 因为对于AS开发我并没有进行系统的学习,只是知道大体的框架和对AI进行训练,但是 我发现了一个…

学嵌入式C语言,看这一篇就够了(6)

C语言的语句和块 C语言标准中一共提供6种语句 注意:C语言中的语句要指明执行的操作,并且没有特殊情况,语句是按照顺序执行的一般把实现某些功能的语句整合在一起,构成一个语法单元,C语言标准的语法单元也被称为块,也被称为块语句 复合语句 复合语句可以限制语句的作用范围…

P3375 【模板】KMP

P3375 【模板】KMP 题目描述 给出两个字符串 \(s_1\) 和 \(s_2\),若 \(s_1\) 的区间 \([l, r]\) 子串与 \(s_2\) 完全相同,则称 \(s_2\) 在 \(s_1\) 中出现了,其出现位置为 \(l\)。 现在请你求出 \(s_2\) 在 \(s_1\) 中所有出现的位置。 定义一个字符串 \(s\) 的 border 为 …

Cursor 使用教程

目录核心功能TabAICHATCOMPOSER@DocsWebGitNotepadCodebase技巧和思路如果Cursor乱改代码怎么办? 核心功能 Tab 这个是Cursor最为强大的功能,使用也很简单,在编写代码的时候,如果出现了灰色的提示词,直接按Tab就可以自动补全了最后的灰色的就是提示词 Cursor的光标预测也很…

C语言学习打卡第二天(2025.3.21)

时间有点少,今天也没学多少,只把指针基础概念学了一下(例如指针变量,下标法等),题也只做了三道。

3.21 学习记录

设计科技查询手机端系统,实现了政策关键字进行模糊匹配查询,点击下方的政策名称,可以打开新窗口,显示政策全文,实现分页查询,分类查询 采用springboot+vue3实现

P8436 【模板】边双连通分量

P8436 【模板】边双连通分量 题目描述 对于一个 \(n\) 个节点 \(m\) 条无向边的图,请输出其边双连通分量的个数,并且输出每个边双连通分量。 输入格式 第一行,两个整数 \(n\) 和 \(m\)。 接下来 \(m\) 行,每行两个整数 \(u, v\),表示一条无向边。 不保证图为简单图,图中可…