- 博客(21)
- 收藏
- 关注
原创 day 9 tarjan 算法总结
首先,在学习 tarjan 之前需要知道的几个定义。在 dfs 搜索一张无向图时,得到的树一定不含横向边。
2024-07-16 19:48:05 652 1
原创 2024.7.10 day 3 比赛总结
比赛不能够一直想一道题目,需要先各花151515分钟读一遍每一道题目,接着根据自己理解的程度和思路去进行推理和思考,在想不到时要及时打暴力,调试时,可以进行分块输出,在纸上画出流程图,实在挑不出,需要及时前往下一道题,这样能够有效的拿到更多的分。
2024-07-15 19:37:54 942
原创 P2949 [USACO09OPEN] Work Scheduling G 题解
约翰有太多的工作要做。为了让农场高效运转,他必须靠他的工作赚钱,每项工作花一个单位时间。他的工作日从0时刻开始,有109个单位时间。在任一时刻,他都可以选择编号1到N的N1≤N≤105项工作中的任意一项工作来完成。因为他在每个单位时间里只能做一个工作,而每项工作又有一个截止日期,所以他很难有时间完成所有N个工作,虽然还是有可能。对于第i个工作,有一个截止时间Di1≤Di≤109,如果他可以完成这个工作,那么他可以获利Pi1≤Pi。
2024-07-15 19:36:33 916
原创 P10781 【MX-J1-T1】『FLA - III』Spectral 题解
这道题目最直接的方法就是暴力找最大值,显然会超时,接着就是进行打表,我们会发现,这道题的函数,是一个单峰函数,只会在一开始持续上升,在一定的位置持续下降,所以我们只需要找到那个转折点,直接退出即可。
2024-07-15 19:35:59 244
原创 day12 测试总结
T1 万圣节:由于题目比较长,可以尝试整理一下题面,即使不会做,也好更快的拿部分分,当然更希望在赛时能够想到本题的正解。T2 XYH 和 AEY 的战略游戏:这道题亏就亏在,因为题面太长,没仔细看,不然应该能够拿到一些部分分,暴力分。T3 河流:这道题目,总体来说有点没有理解题目意思,加上这道题思维难度还是比较高的,看了题解也没懂,再次与正解无缘,只能说还需加油,下次看到这种题目,还是可以先打部分分的。
2024-06-22 21:33:18 818
原创 [ARC147D] Sets Scores 题解
每个集合之间可能会有不同的数k,而我们可以直接找出任意一个集合Si,找出它里面是否存在k,找出所有的可能性x。对于一个序列Si,它的可能性为nm,而一共不同的数会存在n−1次的比较,因为是每相邻两个比较,所以总次数为mn−1,合起来就为nm×mn−1,而由于数据过于大,我们要采用快速幂,并且最终注意变量类型。如果以上方法不太懂可以使用列举的方法,一个个列举,接着和样例进行校对,接着得出规律。当然如果比较空的时候也可以尝试一下打表。
2024-06-15 12:51:01 444
原创 CF1985G D-Function 题解
首先我们可以设数字n的任意一位数字为s,那么s对于k⋅Dn的贡献为s⋅k,对Dn⋅k的贡献为Ds⋅k,显然只有在s⋅k10的情况下他们的贡献才可能相等,说明整个数n也要满足此条件,接着我们可以用010r的答案减去010l的答案,但一个个处理时间太长,我们可以把数位不足的数加上前导0来计算,显然这是不影响答案的。
2024-06-15 11:54:11 742 1
原创 day11 数位 dp 总结 未完成
数位 dp 的定义:所谓数位 dp 也就是根据一个数的每一位来做动态规划,而数位 dp 的题目不会像有些题目,需要你来仔细看需要用到什么算法,而数位 dp 的特点很显著。第一,一般情况下肯定是要往数字每一位数上去考虑的,第二,也就是数据范围,好一点的,可能n≤109n≤109或者n≤1018n≤1018,狠一点的直接干到n≤103000n≤103000,这样就更加明显了,不可往数字的大小上看,必定得往数字的各个位数上考虑。
2024-06-15 11:49:29 955
原创 题解:CF638C Road Improvement
首先第一个问,我们可以通过贪心策略解决,显然k是所有点中度数最大的点,因为对于每个点,每天最多修一条边,所以答案必然大于等于最大度数。后面的问,我们可以定一个节点为根,从根开始遍历,用 vector 存每天建的边,还要记录任意一个节点u与它父亲节点建边的天数,遇到时需要跳过,随后输出即可。
2024-06-10 22:51:45 144
原创 题解:CF111C Petya and Spiders
我们可以看到n×m≤40,显然我们可以推算出maxnm≤6,竟然只有6,那我们搜索就行了。我们用x记录目前的有蜘蛛位置的数量,也就是聚集点,用 STL 维护回溯即可。
2024-06-10 22:50:21 262
原创 题解:CF1732C1 Sheikh (Easy version)
q次询问,每次求lr的区间和减去区间异或值得到差的最大值,若有多个最大值,去取区间长度最短的,若仍然有多个区间,输出其中一个即可,保证q1L1Rn。
2024-05-03 22:53:53 1281 1
原创 P9687 Maps.题解
每组数据里,0代表白色,而1代表黑色,要保证正好有p个白色在两个黑色之间。要保证一定是字典序最好的,长度为n,如果没有满足要求的,那么输出−1,一共有T组数据!
2024-04-27 22:08:52 1317
原创 连续素数之和 Sum of Consecutive Prime Numbers题解
的时候,由于质数按从大到小的顺序存的,所以右边界向前,左边界不变,相反情况大于,左边界向前,右边界不动要把前面的上次左边界的数删了,当然左右边界在同一个位置也是存在的。首先先用优化的欧几里得算法来找出所有的质数,虽然可以打表,但不建议,因为最好像这种题练习筛选质数。接着因为这道题是不固定数量输入的,所以我们要用 while 循环输入,因为题目说输到是。首先先特判质数本身不能已经比总和大,如果是,把直接退出循环了,接着就是定义一个小的。相不相等,相等就继续加,重复即可,最后输出答案即可。
2024-04-24 16:33:47 451
原创 P1080 [NOIP2012 提高组] 国王游戏题解
排好队后,所有的大臣都会获得国王奖赏的若干金币,每位大臣获得的金币数分别是:排在该大臣前面的所有人的左手上的数的乘积除以他自己右手上的数,然后向下取整得到的结果。国王不希望某一个大臣获得特别多的奖赏,所以他想请你帮他重新安排一下队伍的顺序,使得获得奖赏最多的大臣,所获奖赏尽可能的少。注意,国王的位置始终在队伍的最前面。首先,他让每个大臣在左、右手上面分别写下一个整数,国王自己也在左、右手上各写一个整数。数组,因为直接看整体,很难做,那么我们可以从两个人中找出规律,再依次循环下去。的人放在前面,把下标为。
2024-04-24 16:24:27 368 1
原创 P3566 [POI2014] KLO-Bricks 题解
现在有n种颜色的砖块,第一个必须放第p种颜色,最后一定得放第q种颜色,剩余中间的需要自己构造,使得每相邻两个砖块的颜色不相等,有解随便输出任意一种,无解则输出0。
2024-04-24 16:19:30 287
原创 P2569 [SCOI2010] 股票交易题解
这道题一眼动态规划,我们来设一个状态,设dpij为前i天拥有股票数量j的最大收益,而状态转移方程需要分类讨论。一直单纯买,那么转移方程很明显,一开始我们会将所有数据初始为极小的数,为dpijj×api。不买也不卖,那么状态转移方程由上面方法转移而来,非常明显,与前一天中找收益大的,转移方程为dpijmaxdpijdpi−1j。在上面两种方法的情况下买股票,这个转移方程稍微复杂一些,由于每次买卖之间需要相隔w。
2024-04-24 16:06:58 1224 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人