摘要: 本题传送门 解题思路 既然要算一段区间的和,就用前缀和。 然后遍历这个数轴,如果一段窗口区间的前缀和爆了,就说明这个窗口最后一个元素加进来之后会超大小,根据题目,我们理论上可以把这个数修改成无穷小,然后所有包含这个数的区间都不用看了,以窗口大小为3举例很容易推导出参数表达。 ac✅️代码 #incl 阅读全文
posted @ 2026-03-22 16:21 shuiwangrenjia 阅读(7) 评论(0) 推荐(0)
摘要: 本题传送门 解题思路 本题难点在于理解题意,和敢于dfs的勇气 直接上代码 #include<iostream> #include<algorithm> using namespace std; //不如直接求出n位数以内的所有数谁能够被n整除 typedef long long ll; ll n, 阅读全文
posted @ 2026-03-22 15:16 shuiwangrenjia 阅读(25) 评论(0) 推荐(0)
摘要: L2-055胖达的山头 解题思路 先把时间换算成秒,输入的时候可以用scanf,然后用一个cnt[100010],一天有86400秒,数组大小足够,然后对于开始时间st,cnt[st]++,对于结束时间ed,cnt[ed+1]-- , 这里的ed+1是因为,题目要求任意一个时刻都不能同时有多个熊猫, 阅读全文
posted @ 2026-03-22 14:33 shuiwangrenjia 阅读(17) 评论(0) 推荐(0)
摘要: 本题传送门 解题思路 本题思路是 确定前两个点,推出第三个点,由于我们要找目标在第三个集合中有没有,而这个数可能是负数,所以可以采取对v2所有数字映射为正整数,做个标记,后续查询时间复杂度为O(1),然后把目标算出来之后也要映射一下,以对应v2,所以bool[tar+偏移量] 。 剪枝:由于v0,v 阅读全文
posted @ 2026-03-22 10:48 shuiwangrenjia 阅读(24) 评论(0) 推荐(0)
摘要: 算式拆解 祛魅题 解题思路 与acwing的表达式求值同出一辙 , 这是acwing题目传送门,再来看这一题,其实几乎可以套模板了(还是有点跨度的),由于题目只是要求输出计算步骤,而不是每一步的结果,所以用字符串更方便,而且我们这里的数栈用的是string类型,避免我们的标记值与题目数据冲突。 重点 阅读全文
posted @ 2026-03-22 10:28 shuiwangrenjia 阅读(33) 评论(0) 推荐(0)
摘要: 本题传送门 被卡掉一个点的代码 #include<iostream> #include<vector> using namespace std; int L,N,ans; int col_sum[5]; vector<vector<int>> valid_rows; vector<int> temp 阅读全文
posted @ 2026-03-21 20:59 shuiwangrenjia 阅读(10) 评论(0) 推荐(0)
摘要: L2-051满树的遍历 解题思路 很简单的dfs函数,这里可以用set来存所有的度,度有三种情况: 度只有一个,就是0,当树只有一个结点的情况,这时候是合法的,为0阶满树。 度有2个,叶结点度为0,其余结点度相等,这种情况也是合法,*set.rbegin就是set最后一个元素,即最大度。 度大于等于 阅读全文
posted @ 2026-03-21 18:16 shuiwangrenjia 阅读(7) 评论(0) 推荐(0)
摘要: 传送门 解题思路 这是一道比较简单的字符串处理的题目,考点就是对于单词间有多个空格的字符串的处理,还有对字符串的排序。 方法一: 记录一下上个字符的状态,如果上一个是空格(初始化为true),而当前的是字符,那就说明它是一个单词的开头。用一个map<string,vector>来处理,也可以使用un 阅读全文
posted @ 2026-03-21 14:45 shuiwangrenjia 阅读(9) 评论(0) 推荐(0)
摘要: 本题传送门 解题思路 这里提供两种思路: 用个vector<set> 来放个邻接表,每个单位是一个集合,代表每个人拥有的物品数。然后查询的时候,遍历所有人,只要在他的集合里既存在l,又存在r 就计数加一。最后输出 使用vector 来放个邻接表,每个单位代表拥有这个物品的人有哪些,然后对于查询的物品 阅读全文
posted @ 2026-03-21 13:31 shuiwangrenjia 阅读(12) 评论(0) 推荐(0)
摘要: L2-048寻宝图 看到题干先笑一下 然后就得哭了 很显然的BFS,就跟acwing的走迷宫一样。但是数据量很大,使用二维数组必爆 解题思路 这里需要用一维数组,并且映射到二维数组上。补充:假如一个矩阵是n×m的,对于一个二维数组a[i][j] , 这里的i,j就是它的横纵坐标,这是我们BFS需要的 阅读全文
posted @ 2026-03-20 20:51 shuiwangrenjia 阅读(13) 评论(0) 推荐(0)