你好_A
你好_A
全部文章
分类
题解(14)
归档
标签
去牛客网
登录
/
注册
你好_A的博客
全部文章
(共14篇)
牛客小白月赛101题解 | A~E(F不会哈哈哈)
好久没有参加过比赛了,交题都是过了样例就交,导致白白吃了不少罚时,反思。 A:tb的区间问题 分析 要求必须从头和尾处总共删 个数,数据只有 可以用 的暴力做法做出。这里写一个 的做法。 前缀和预处理, 表示区间 的区间和。 然后可以从 到 枚举从头部删除的数有多少,由此可知道从尾部删...
C++
2024-09-20
0
259
题解 | #小红的数位删除#
笨蛋也能看懂(就是啰嗦) 知识点:线段树 树状数组 我们来一步步推出做法。 1、首先思考 ,即长度大于等于2的回文串。 2、为了不出现如 或 这样的回文串,我们要保证连续三个字符都不一样。 3、即整个字符串 都是按照一个顺序重复排列的,例如 “” 或 “” 。而 的不同排序一共有 种:...
C++
前缀和
线段树
2024-03-11
3
341
2023顺丰全球高校菁英挑战赛——编程方向个人题解
2023顺丰全球高校菁英挑战赛——编程方向个人题解 A: 遍历所给字符串,按照小写字母、大写字母、数字三种类型分别把字符加到三个字符串上。然后输出。 AC代码 void solve() { string s; cin >> s; string a, b, c; for (auto...
C++
2023-06-03
1
902
2023年福建农林大学程序设计校赛个人题解(无D解析)
2023年福建农林大学程序设计校赛个人题解(无D解析) A-这是一道原题 问题解析 从绿色材料合成到金色材料。 用 whilewhilewhile 循环判断材料数是否能合成,能就合,合成后下一级材料数增加,原料数加上合成出的材料数。 AC代码 #include<iostream> usi...
C++
2023-05-22
1
445
题解 | L、字符串
L、字符串 前置知识:字符串哈希 我们判断两个十进制的数是否相等,可以如下来拆分操作: 先判断个位数是否一样,再判断十位数是否一样……最后判断最高位是否一样,如果全部一样那么这两个十进制数就是一样大的。设个位数是a,十位数是b……最后一位数是z,那么这个数的大小就是:(a* 10^0)+(b * 1...
C++
哈希函数
字符串
2022-08-17
0
488
题解 | D、树上祖先询问
D、树上祖先询问题解 前置知识:dfs序,倍增法求lca OI wiki上的倍增LCA模板, 看文字嫌累还有b站的讲解视频(个人觉得不错) 题目主要是让我们求A集合内全部点的公共祖先,对于求多个点的最近公共祖先,我们并不真的要对所有点两两都求一次。我们只用取这些点中dfs序最小和最大的两个点来求最近...
C++
深度优先搜索
2022-08-14
4
568
题解 | #A、Sum#
A、Sum 吐槽 再经过"YE5"和"N0"后又一次被牛客恶心到辣,为什么是对1e7+7取模啊喂! 前置知识:排序+贪心 问题解析 每次我们可以合并至少两个数,并获得等同于他们之和的分数总和。 那么对于贪心来说,我们可以先对所有数进行降序排序(大的在前面,小的在后面)。 每次合并最大的两个数即可,而...
C++
2022-08-12
1
431
题解 | #D、Word#
D、Word 前置知识:BFS(广度优先搜索) 问题解析 看到数据后我们发现,一共最多只有2000个字符串,字符串的最大长度才20,而且只有一个询问而已。那就可以先想暴力了,加上这里要求的是把s变成t的最少操作数,我们可以采用BFS的方法。 初始队列中存入字符串s。 在每一步的bfs中,我们可以枚举...
C++
广度优先搜索
2022-08-12
0
492
题解 | #C、School#
C、School 前置知识:区间合并+二分查找 区间合并:对于多个区间来说,如果其中有区间的范围有重合,那便可以把他们合并成一个区间,这样做对于某些对区间的处理就能方便简洁很多。 问题解析 为了方便处理,我们可以直接把所有时间改成分钟的形式,比如1小时10分,对于我们正常的时间来说,这就是70分,那...
C++
二分查找
2022-08-12
6
614
题解 | #B、Gaming#
B、Gaming 前置知识:线段树(区间修改+单点查询) 线段树是算法竞赛中常用的用来维护 区间信息 的数据结构。 线段树可以在 logn 的时间复杂度内实现单点修改、区间修改、区间查询(区间求和,求区间最大值,求区间最小值)等操作。 具体可以移步https://oi-wiki.org/ds/seg...
C++
线段树
2022-08-12
3
691
首页
上一页
1
2
下一页
末页