随笔分类 -  ACM

上一页 1 ··· 14 15 16 17 18 19 20 21 22 ··· 36 下一页
大二到大三不堪回首的记忆....
摘要:原题链接 考察:枚举 错误思路: 爆搜,结果第九个点TLE.采取多个剪枝依旧第九点TLE.... 正确思路: 预处理合法的月+日+年.对于每一个字符串,检查是否有与他在有数字的位数上相同的合法日期,如果有就ans++ 坑点:质数不包括1与0,这两个一定要先赋值1!!!! 实测954ms 1 #inc 阅读全文
posted @ 2021-04-12 13:42 acmloser 阅读(129) 评论(0) 推荐(0)
摘要:原题链接 考察:二分+二分图判定 or 带权并查集+贪心 思路一: 二分+二分图判定.由题目可知我们要求最大矛盾的最小值.最小值可以通过二分枚举,那么关键是如何check.首先容易想到>最小值的两个人一定不能在同一集合.需要将它们分别放在不同的监狱.那么问题来了:这样存放可能会导致某些破坏最小值合法 阅读全文
posted @ 2021-04-12 01:30 acmloser 阅读(114) 评论(0) 推荐(0)
摘要:原题链接 考察:双端队列bfs 思路: 双端队列常用于距离只有0,1的情况.当距离为0时,更新的点放在队头.当距离为1时,更新的点放在队尾. 判断01距离不用写冗长的if代码.可以参照方向数组预设距离为0的斜杠应该有的方向. 这里当出队的距离才是确定了此点的最短距离. 1 #include <ios 阅读全文
posted @ 2021-04-10 23:57 acmloser 阅读(75) 评论(0) 推荐(0)
摘要:原题链接 考察:多源bfs 思路: 模板题.单纯记录证明过程.正解就是将所有值为1的点作为起点.bfs更新到达其他点的距离. 实际上相当于建立一个超级源点.该源点到其他为1的点距离是0.每次bfs取出队头的点一定是离源点距离最近的点.再以此更新到其他点的距离.这种做法很像dijkstra.但是区别是 阅读全文
posted @ 2021-04-10 17:14 acmloser 阅读(59) 评论(0) 推荐(0)
摘要:原题链接 考察:二分+前缀和 思路: 易知w变大,y和变小,w变小,y和变大.由此发现y与w的变化关系有单调性.但是这道题求的是abs(Y-S),答案和w的变化并无单调性.我们可以求最小的>=s的Y和最大的<s的Y.再两边求最小值. 真的没必要死脑筋的返回true与false.单纯数值类型可考虑返回 阅读全文
posted @ 2021-04-10 14:26 acmloser 阅读(189) 评论(0) 推荐(0)
摘要:原题链接 考察:线性dp+背包dp 思路: 每个横坐标可以选择按或者不按,这种组合问题求最优解可以考虑背包dp. 易知f[i][j]为以i为横坐标,j为纵坐标的最小按键次数.这道题不需要不通过后判两次dp.只需要在当前坐标存在管道后检测是否通过管道,如果不通过就是输出0 当前管道数-1.那么dp转移 阅读全文
posted @ 2021-04-10 09:31 acmloser 阅读(99) 评论(0) 推荐(0)
摘要:原题链接 考察:线性dp 思路: 这道题就和POJ 1661差不多.f[i][0/1]表示到达第i条线段的0(左),1(右)的最小距离. f[i][0] = min(f[i-1][0]+i-1条线左端点到i条线左端点的最短距离,f[i-1][1]+i-1条线右端点到第i条线左端点的最小值) 同理右端 阅读全文
posted @ 2021-04-09 21:36 acmloser 阅读(160) 评论(0) 推荐(0)
摘要:原题链接 考察:线性dp 此题不会,fw本f 思路: 求方案数且需要取模,基本上使用dp求解. 根据题目,dp状态一定要记录a取到哪一位,b匹配到哪一位,同时还有段数限制,所以还需要记录段数.所以设置f[i][j][k]为以a的前i位匹配了b前j位,已经用了k段. 此时还发现对于第i位,我们需要判断 阅读全文
posted @ 2021-04-09 18:46 acmloser 阅读(138) 评论(0) 推荐(0)
摘要:原题链接 考察:线性dp 思路: 一开始的思路是定义结构体dp数组,但是会出现到达同一点剩余卡片种类不同的情况,只要卡片种类不同就会获得不同的分数,所以必须记录剩余卡片种类. 考虑到M很小,cnt(每种卡片)<=40.可以考虑开数组f[i][j][k][p][q] 表示到i点时剩余卡片为j,k,p, 阅读全文
posted @ 2021-04-09 01:33 acmloser 阅读(99) 评论(0) 推荐(0)
摘要:原题链接 考察:线性dp+贪心 本蒟蒻真真菜到抠脚...二维MLE,滚动后TLE,绝望...已经菜到不会写普及组的题. 错误思路: 设f[i][j]为i秒时魔力为j的最大距离,总共三种决策: 一、 休息, f[i][j] = f[i-1][j] 二、 魔法,f[i]j] = f[i-1][j+10] 阅读全文
posted @ 2021-04-09 00:14 acmloser 阅读(303) 评论(0) 推荐(0)
摘要:原题链接 考察:树形dp 思路: 树上最大值,最小值,方案数是树形dp常考的问题.这里设置f[i][j]为在以i为根的子树中,i的颜色是j的最大结点数. 设置2为绿色,初始化所有f[i][2] = 1.如果当前父节点u只有一个子结点x f[u][k] += max(f[x][j]) j!=k. 如果 阅读全文
posted @ 2021-04-08 19:06 acmloser 阅读(65) 评论(0) 推荐(0)
摘要:原题链接 考察:树形dp 思路: 换根dp,f[i][j][0]表示以i为根的子树中与i距离不超过j的权值和.f[i][j][1]表示以i为起点,往上走距离不超过j的点集合. 易知f[i][j][0] += f[v][j-1][0] 其中f[i][0][0] = w[i] 如果是往上走:f[v][j 阅读全文
posted @ 2021-04-08 14:21 acmloser 阅读(47) 评论(0) 推荐(0)
摘要:原题链接 考察:树形dp 错误思路: 换根dp,正向点权值0,逆向点权值1.求每个点到其他点的距离和. 此思路错在会多次计算要旋转的边. 思路: 换根dp,需要两次dfs求当前结点i往下走的逆转数和往上走的逆转数.向下走的计算很容易 f[u][1]+=f[v][1]+road[i].w 向上走如果直 阅读全文
posted @ 2021-04-08 00:58 acmloser 阅读(48) 评论(0) 推荐(0)
摘要:原题链接 考察:树形dp 想了半天没想出来怎么从父节点的深度和推到子节点深度和,我果然fw 思路: 换根dp模板题.也称二次扫描法,第一次多用于预处理,第二次多用于计算答案. 第一次dfs时,用子节点更新父节点,计算每个结点的子树结点个数,并计算当前假定根的深度和 第二次dfs时,用父节点更新子节点 阅读全文
posted @ 2021-04-07 20:17 acmloser 阅读(45) 评论(0) 推荐(0)
摘要:原题链接 考察:树形dp 推dp转移方程的时候,总是忘记f数组原来定义的含义...初始化也可以帮助推出dp数组. 思路: f[u][j] 表示以u为根的子树中,保留j个点最少的剪枝数.初始化f[u][1] = son[u].这样初始化一开始点都是独立的,通过下面的转移方程将它们连起来. 那么dp转移 阅读全文
posted @ 2021-04-07 12:31 acmloser 阅读(72) 评论(0) 推荐(0)
摘要:原题链接 考察:树形dp 思路: 参考大佬的思路,本蒟蒻还以为是有依赖的背包问题,但是直接开背包数组会MLE. 定义f[i]为以i为根节点的子树中,最大的结点和.f[i] = max(f[i],f[j](j为i的所有直接或间接的子节点)). 这道题是选两个不相干的最大子树和,需要在每个结点处取最值. 阅读全文
posted @ 2021-04-07 02:08 acmloser 阅读(57) 评论(0) 推荐(0)
摘要:原题链接 考察:思维+构造 打死本蒟蒻也想不到系列 思路: 当(n+1)n = n 此情况不存在 即 n = -1 (n+1)n = n+1 此情况不存在 n = 1 1 #include <iostream> 2 #include <cstring> 3 #include <vector> 4 # 阅读全文
posted @ 2021-04-06 22:28 acmloser 阅读(53) 评论(0) 推荐(0)
摘要:原题链接 考察:推导(?) 思路: k所表示的数一定可以在某一层的2n-1的位置上.对于当前n,如果k>2n-1,那么将它调到左边k-=2n-1,如果<说明k所代表数在下一层,=即可跳出. 1 #include <iostream> 2 #include <cstring> 3 using name 阅读全文
posted @ 2021-04-06 15:58 acmloser 阅读(58) 评论(0) 推荐(0)
摘要:原题链接 考察:模拟,贪心 思路: 大水题,但我WA两次.... 第一次没考虑b<a的情况,求距离是abs 第二次没考虑多次中转的情况...一开始的思路就是只存在一个中转站,如果>1个不如直接飞去后面那个.但实际此思路错误: eg: 111110000 (第1个是源地址,最后一个是目标),实际上一个 阅读全文
posted @ 2021-04-06 15:16 acmloser 阅读(65) 评论(0) 推荐(0)

上一页 1 ··· 14 15 16 17 18 19 20 21 22 ··· 36 下一页