摘要: 滑动窗口+dp 很有意思找最小花费 用双向队列维护,仔细看看想想 每一次跑都从头跑,然后去排掉大的花销 dp思想 Problem - E - Codeforces #include <bits/stdc++.h> //#pragma GCC optimize("Ofast") #include <i 阅读全文
posted @ 2024-03-15 00:48 whatdo+ 阅读(4) 评论(0) 推荐(0) 编辑
摘要: pta天梯专栏 7-11 龙龙送外卖 - SMU 2024 spring 天梯赛1(补题) (pintia.cn) 题解:首先我们先建个图然后存一下各个节点的父亲节点 我们细看这个最短路可以发现,当全部节点加进来,那么最短路就是每一个节点跑两遍然后最深的那个节点最后才跑,这样就只需要1遍 所以我们首 阅读全文
posted @ 2024-03-12 17:46 whatdo+ 阅读(2) 评论(0) 推荐(0) 编辑
摘要: B 孵化小鸡 - SMUOJ 题解:因为数据很小我们可以枚举每一个状态然后判断一下是否可以达到孵化的温度即可 我们用二进制枚举,一共1<<m相当于2的m次方,用二进制枚举每一个状态 //#include <bits/stdc++.h> //#pragma GCC optimize("Ofast") 阅读全文
posted @ 2024-03-05 22:48 whatdo+ 阅读(1) 评论(0) 推荐(0) 编辑
摘要: E-漂亮数组_2024牛客寒假算法基础集训营4 (nowcoder.com) 这题想多了,以为是一个dp优化,没想到贪心即可,dp比较弱,赶紧优化 题解:找一个区间满足k倍即可,我们直接累加然后模k如果出现两次模k等于同一个数那么这个区间就是k的倍数记录即可 简单贪心,没想到 #include <b 阅读全文
posted @ 2024-02-20 13:50 whatdo+ 阅读(14) 评论(0) 推荐(0) 编辑
摘要: F-Tokitsukaze and Eliminate (hard)_2024牛客寒假算法基础集训营2 (nowcoder.com) 脑袋堵住了,红温没有写出来,后面想到思路直接给否定了,可惜 题解:需要你找最右边第一个,直接先统计一下有多少个颜色的宝石,然后从左往右依次放入set到相应的颜色数就加 阅读全文
posted @ 2024-02-05 20:06 whatdo+ 阅读(11) 评论(0) 推荐(0) 编辑
摘要: G-天气预报_2022年中国高校计算机大赛-团队程序设计天梯赛(GPLT)上海理工大学校内选拔赛(重现赛)@IR101 (nowcoder.com) 用到算法(前缀和+尺取法) 题解:实现前缀和求一下某一个段里0和1的数量,分别记录下雨和不下雨天数 然后开始尺取 首先枚举终点一个for 类似双指针思 阅读全文
posted @ 2024-01-31 17:00 whatdo+ 阅读(7) 评论(0) 推荐(0) 编辑
摘要: D题 D-旅游_牛客小白月赛69(重现赛)@PHarr (nowcoder.com) 题意:自己看 题解:最小生成树模板题 最小生成树算法(这个就是给你一个图里面修路让城市和城市之间想联通,每一条路都是有一个修路的花费,最小生成树就是全部的点联通最小的代价) 现在怎么处理 首先我们排序每一个连接的边 阅读全文
posted @ 2023-10-31 16:45 whatdo+ 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 华中科技大学新生赛 Problem - F - Codeforces(取模运算) 题意:一个x如果不能被p整除则结果是x%p,如果可以被整除那么结果是n/p 现在问你n!%p等于多少 题解: 假如n=21,p=7; 我们一个分配率(1%p*2%p*3%p*4%p*5%p......*n%p) 我们发 阅读全文
posted @ 2023-10-29 16:03 whatdo+ 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 青蛙过河 - 蓝桥云课 (lanqiao.cn) 题意:现在一只青蛙过河,河里有石头,石头每踩一下就会下沉一厘米,然后给你河宽n,需要过河的次数,和里面石头的高度,0厘米就不能用了 然后现在让你给出一个最小的x,就是青蛙的跳跃能力,一次能跳多远,你可以跳1到x,让你给出一个最小的x 题解:一看题我们 阅读全文
posted @ 2023-10-25 17:17 whatdo+ 阅读(9) 评论(0) 推荐(0) 编辑
摘要: 整数二分边界 bool check(int x) {/* ... */} // 检查x是否满足某种性质 // 区间[l, r]被划分成[l, mid]和[mid + 1, r]时使用: int bsearch_1(int l, int r) { while (l < r) { int mid = l 阅读全文
posted @ 2023-10-15 17:11 whatdo+ 阅读(54) 评论(0) 推荐(0) 编辑