随笔分类 - 考试
摘要:A. 哪一天她能重回我身边 学网络瘤学傻了,用费用瘤搞掉第一问就在想怎么搞方案,然后越想越偏。。。。。 不仅没有搞出来第二问,而且费用瘤的复杂度。。。。 总之就是挂的很惨。。。。 这题居然是个树形$DP$??? 把背面的数向正面的数连边,翻一张卡相当于把边反向,我们要用最少次数让所有点入度小于等于$
阅读全文
摘要:A. 神炎皇 有的时候,不能太相信自己的过去。。。。 这题不是很难,本来打表已经出了最终性质了,但是发现自己曾经交过这道题,于是手贱搞下来对拍一下,发现全挂了。。 输出一下发现好像原来的是错的,但是因为脑抽 ,太过相信自己,认为原来的是AC的。。 最后毅然决然交了过去的码,结果$WA0$。。。。。。
阅读全文
摘要:差点又因为文件暴0。。。 A. matrix 状压,$f[i][j][k]$表示第$i-1$行状态为$j$,第$i$行状态为$k$的最小花费。 貌似复杂度不对?但是舍弃非法状态后复杂度是可以接受的,具体怎么证明我不会 code #include<cstdio> #include<cstring> u
阅读全文
摘要:本场比赛是暴力的胜利!!!! A. d 怎么说呢,考场想到正解方式,但是错误使用双指针,而且完全没想平衡树。。。。 做法就是分别按照$a,b$排序,然后枚举按照升序删掉多少$a$小的,剩下的按照$b$删,使用平衡树很好的解决,可惜考场完全忘了有这个东西。。 好在这样的暴力有$81pts$ code
阅读全文
摘要:博客咕了好久,还是更新一下吧。。。。 A. 世界线 搜索,暴力搜索。。。 答案显然是每个点能到达的点的数目之和减去边数 就是$DFS$,但是直接搜显然会$TLE$ 于是使用$STL$的$bitset$进行优化 然鹅会$MLE$ 发现空间只够开一半的点,所以分两次$DFS$,每次处理一半。 code
阅读全文
摘要:夜莺与玫瑰 想了大概$2h$也没搞出来,真的是。。。我太菜了 最后连$60pts$暴力都没调出来(式子没有$max$),还是时间分配不合理,留给打爆力的时间太少了。。。。。。。(最后$10min$能打出来才是奇迹好吧) 这题一看题面就想到仪仗队,然后就想用欧拉函数,就歪了 欧拉函数用不上,但是思想还
阅读全文
摘要:没想到这个系列还能再更新 A. 装饰 这种题就需要大胆猜测打表验证 反正就是推出来了,式子变化一下就是题解式子,就是有亿点不简洁 我是这么想的(大概) 先排序,两个较小的颜色可以看成一个,这样只用考虑两种颜色,取法只有$1-2$ 令两种颜色数量为$a,b(a<b)$ $a*2<=b$显然按照$a$取
阅读全文
摘要:A. 星际旅行 乍一看好像挺难,考场上跳过做后面,回来一想也不是多难 大胆猜测结论,然后居然证出来了,然而没有开$long long$我直接爆炸 考场乱画发现猜测两边必须相邻,然后尝试证明 发现:一条边走两次$=\(两条边,走一次\)=$删一条边 然后问题就变成删去两条边,剩下的构成欧拉路 删去之前
阅读全文
摘要:a $N$很小$M$很大,猜测需要$O(N^2M)$的算法,就是枚举$N$得到一段序列然后$O(M)$求贡献 随着左界的右移,满足条件的区间一定不会左移,使用双指针(或许是三个) code #include<cstdio> #include<cstring> using namespace std;
阅读全文
摘要:A. 贝尔数 中国剩余定理+矩阵快速幂优化递推 中国剩余定理没学,咕咕 B. 穿越广场 $AC$自动机$dp$,$AC$自动机还没学,咕咕 C. 舞动的夜晚 最大流的必经路,咕咕
阅读全文
摘要:A. 茅山道术 简单$DP$,只考虑相邻两个同色的是否使用就行 code #include <cstring> #include <cstdio> using namespace std; const int maxn=1000005; const int mod=1e9+7; int rem[ma
阅读全文
摘要:A. 计数题 以每个位置结尾的字符串最多只有一个,对于一个串,如果扩展他的前缀,不会使结果变差,那么我们就强制取以1位置开始的子序列,发现如果产生了冲突,那么一定是一个前缀和一个子串的后缀相同,那么这个前缀或者这个子串我们只能留一个,一个前缀可能和多个子串后缀冲突,但是一个子串只会和一个前缀冲突,所
阅读全文
摘要:A. 异或 这种题就是打表,什么性质不性质的不重要 不知道我打表出的式子怎么解释,, 粘一下题解做法吧 "考虑每一位的贡献,从低到高的第$i$位会每隔$2i$个数变化一次,于是第$$i位对答案的贡献就是$\lfloor\frac{i}{2i}\rfloor$, 把每一位的贡献加起来即可。" 我的代码
阅读全文
摘要:求和 等差数列求和,直接乘会炸$ull$,需要龟速乘(考试时候懒得打高精主要是不会,也忘了有龟速乘这个东西.......) code #include<cstdio> #include<cstring> using namespace std; typedef unsigned long long
阅读全文
摘要:这套题咕咕咕咕咕了好久,还是决定先写一点吧 A. 第零题 从$i$到$j$,在$j$处死了,那么与从$j$到$i$死的次数是一样的,也就是说可以向上走到$lca$一下的最后一次死的点,最后这一段统计一下需不需要多死一次就好了,树上倍增记录$i$的第$2^{j}$级死亡点,1级死亡点$dfs$时候记录
阅读全文
摘要:A. 送花 考虑选择一段以$i$为结尾的区间,记录$las[i]$为上一个与$c[i]$颜色相同的花的位置,发现只有在$las[i]+1-i$这个区间才会有$d[c[i]]$的贡献,而之前有贡献的$pos[pos[i]]+1-pos[i]$,没有了$d[c[i]]$的贡献,用线段树维护区间最值,支持
阅读全文
摘要:A. 打地鼠 大水题,暴力比正解难系列 二维前缀和$n^2$枚举即可 code #include <cstring> #include <cstdio> using namespace std; const int maxn=2005; int max(int x,int y){return x>y
阅读全文
摘要:A. 玩游戏 贪心,尝试向两边扩展,能扩展到使手里的数更小的地方就扩展,直到边界处或者两边扩展不了(走不动或者不能使手里的数更小) 貌似不能贪心了? 逆向思维,假如能够扩展完,那么最终手里的数为$sum=\sum_{i=2}^na[i]$我们假设走出来了,从两边向里扩展,进行逆向操作(可以看做移动的
阅读全文
摘要:A. 字符交换 每个字母分开考虑,一定至少有一个字母不动,枚举不动的位置,向两侧扩展至最大,尝试更新答案 注意无穷大的选择 code #include <cstring> #include <cstdio> using namespace std; int sum[27][4005],cnt[27]
阅读全文
摘要:A. Reverse 考场跑了个dijstra就跑路,然后T了。。。。 其实dij用处不大,这题用BFS说不定还快点。但是直接大力BFS显然同样会T飞,考虑如何优化,问题的关键在于这张“图”的“边数”太多了,但是在BFS或者其他算法~~dij~~中,每个点第一次被访问就是该点的答案,也就是说,虽然我
阅读全文

浙公网安备 33010602011771号