随笔分类 - ACM
大二到大三不堪回首的记忆....
摘要:原题链接 考察:质数筛+唯一分解定理 这道题的思路与该题GO 的解法二相同 错误思路: 预处理质数,分解质因数,dfs两个约数,结果是TLE 时间是2891ms 正确思路: 如同上题的解法二.本蒟蒻一开始的思路也是这个,但是本蒟蒻没想出来lcm(8,3)这种情况怎么统计= = ,只想到一方为n,另一
阅读全文
摘要:原题链接 考察:整除分块 原来之前那道余数之和是这道模板题的运用= = GO 和余数之和一样的分块思想. 坑点在之前的素数距离已经遇到过,就是for循环i+1刚好溢出 1 #include <iostream> 2 #include <algorithm> 3 #include <cstring>
阅读全文
摘要:原题链接 考察:素数筛 错误思路: 筛出1e7的素数后,upper_bound找到n/2的位置,lower_bound找+prime[i]==n,的prime[idx],找到后判断是否和为n,是就ans++ 此思路会TLE... 正确做法: 在找与+prime[i]=n的素数,不用lower_bou
阅读全文
摘要:原题链接 考察:快速幂+log运算 求后三位应该不用说,关键是前三位,打死我都想不到系列 看了大佬题解的思路: 涉及位数的题或许都涉及log10.这里也有道求位数的GO 虽然这道题我做过,但做本题的时候我完全没想起来 如果求前三位,可以考虑小数求比较方便,后三位就是整数求比较方便.因此这道题需要转化
阅读全文
摘要:原题链接 考察:约数+奇偶性or打表 错误思路: 本蒟蒻打表打的是1~n的约数和,结果啥都没发现= = 正确思路: 首先要想到求约数和的公式,我们要求约数和为偶数,这时要想到奇偶讨论.显然只有奇数*奇数=奇数,其他都为偶数,为了方便讨论,直接看奇数.只有这些因子全为奇数最后的约数和才可能等于奇数.根
阅读全文
摘要:原题链接 考察:质数筛+约数+dfs 思路: 预处理1e6以内的质数,用质数分解a,枚举小于√a的约数,加上一点剪枝(注意:矩形不包括正方形) 讲一下几个坑点: 判定res是否超过√a时,不要用res*res判断,会溢出,y总真是yyds 提醒我自己,线性筛模板真的不要再写错了!!!!外层循环是到n
阅读全文
摘要:原题链接 还是不会建立二分图啊!!!蒟蒻落泪 想了很久以为是缩点,结果不用缩就是在相邻点处建边就行了(覆盖面积不允许重复!!!) 关键还是建立二分图: 这道题是将相邻点在不同集合,比如[1,1]在集合1,[1,2]、[0,1]在集合2.通过画图可以发现如果相邻则它们的i+j的奇偶一定不同.因此可以分
阅读全文
摘要:原题链接 考察:二分图匹配+线性代数(?) 完全是参考大佬的思路: 根据线性代数的知识,如果矩阵的对角线全为1,说明该矩阵的秩是满的,而初等变换(交换行或者列)不改变矩阵的秩,因此行变换可由列变换代替,其实这道题感觉是在求矩阵的秩,行列变换同时进行会改变矩阵的秩,因此这道题只用行变换或者列变换即可
阅读全文
摘要:原题链接 考察:二分图匹配+图论的基本操作 图论题目做多了看到这句不在这些格子上放车,也可以保证尽量多的“车”被放下,应该能反应过来是删边操作 其实我没反应过来 这道题和之前的HDU 1045一样也是缩点操作,通过这道题也搞明白了点之前的缩点操作,行集和列集有交集才能连边,然后就是走一波最大匹配,最
阅读全文
摘要:原题链接 考察:二分图匹配 上题学会如何分配集合,这题又学会哪个作为匹配的主动方... 正常思路是人到课,但是本题课到人更方便处理,猜想二分图应该是一对多做主动方 1 #include <iostream> 2 #include <cstring> 3 #include <algorithm> 4
阅读全文
摘要:原题链接 考察:二分图匹配+二分图判定 蒟蒻落泪,一开始不知道怎么分组,想了很久才发现在判定的时候就能分组. 看了一些大佬的题解,建立有向图,每个点跑一遍匹配,也能AC.但是这样感觉有点不太对,样例这样跑就会一个点连了两条边.可能我没get到大佬思路 我是采用vector存储,但没必要,用color
阅读全文
摘要:原题链接 考察:暴力搜索或二分图匹配 暴力搜索的思路: 对地图的每一个位置dfs,如果放炮就要判断该处上下左右有没有其他炮,如果不放就继续搜索 关于判断:我们需要选定一个方向一直走,可以用while,我一开始的思路是bfs标记放了炮的上下左右.这种做法是错的,如果炮在(1,1)按bfs(2,1)会被
阅读全文
摘要:原题链接 考察:思维+最短路 给我100小时都想不出这种操作 根据题意: 要求1可转化成1只有一个出度 要求2可转化成4只有一个入度 要求3可转成2~n-1入度=出度 要求答案最小,也就是1尽可能少,0尽可能多.即求边同时也要保证1也就是边的权值最小.这就是最短路问题 如果1->n权值和最小,则答案
阅读全文
摘要:原题链接 考察:最短路+建图 本题最难在建图 根据题意,我们需要在在相邻层(必须都有点存在),额外边之间建边.题目给的N在10^5左右.如果题目给的N只分布在两层,那么暴力建相邻层的边,需要两层for循环判断的时间复杂度在O(n^2).必定TLE. 根据这道题,相邻层的点可以走相邻层的固定路长,也可
阅读全文
摘要:原题链接 考察:并查集+邻接表+逆向思维 kuangbin题单有这道题,但那道题本蒟蒻只看了思路,没有实现,今天做了一下才发现没有那么简单..... 错误思路: 离线处理,将所有的要连的边先存储,标记要摧毁的点,将还未摧毁的点先连接.再将存储的摧毁的点从尾到头遍历,边涉及本次修复的点的就连接, 结果
阅读全文
摘要:原题链接 考察:最短路+枚举 错误思路: 枚举所有点作为起点,看所能更新到1点的最短路.返回的dist[1]即为答案. 此思路错在等级处理.如果以pos[1]-m<=k<=pos[1]+m,那么交易途中的最高点和最低点就无法更新.如果在交易途中更新最高点和最低点,那么走错路的时候就不能回溯 参考了大
阅读全文
摘要:原题链接 记录一下不管做几次都不会写的题 考察:STL+hash 第一次做完全是地铁老人看手机,第二次做基本默写lnj的代码还只能想起思路,本蒟蒻属实fw 正确思路: 因为要输出栈顶集合的size,所以不能拿两个int做键和值.需要将set映射为int,而对应int我们也要能获得相应的集合.这里用到
阅读全文
摘要:原题链接 考察:最短路 错误思路: 拓扑排序两次正反建图,当队列只有一个元素说明可以排名. 此思路错在当所有牛都可以排序时,会重复计数.或者图呈8字形,即中间牛可确定排名,两边牛不可,还会计算错误 正确思路: 如果一头牛可以确定排名,那么他前面的人数和后面的人数都是确定的.即入度+出度==n-1 用
阅读全文
摘要:原题链接 考察:spfa或者BF 本题边有多个属性值,所以需要多开几个数组 正确思路: 因为图是成环形的,最终会回到原点,如果值变小了最后队列会为empty,如果值变大了,队列会在i==s时,跳出循环 本题最好重新做过一遍 1 #include <iostream> 2 #include <cstd
阅读全文

浙公网安备 33010602011771号