上一页 1 ··· 9 10 11 12 13 14 15 16 17 ··· 19 下一页
摘要: CF568C New Language 2-SAT 题意 分析: 我之前可能学了个假的2-SAT,我一直不知道缩完点之后还要DFS 对于这个题按照要求建好图之后 tips:对于 $1\ v\ 2\ c$ 我们需要建两条边,$1 \to 2+n$ 和 \(2 \to 1+n\) 表示 1 选 \(v\ 阅读全文
posted @ 2020-10-30 22:28 youth518 阅读(80) 评论(0) 推荐(0)
摘要: P4410 [HNOI2009]无归岛 仙人掌图 题意 分析: 我们通过分析发现,原来的图是一个环,环上每一个点可能连着一个三元环的仙人掌图 由于整体也是一个环所以不用区分环内和环外,直接搜到环之后做DP求最大带权独立集就行了 代码: #include<bits/stdc++.h> using na 阅读全文
posted @ 2020-10-30 22:26 youth518 阅读(61) 评论(0) 推荐(0)
摘要: 题意: 题面 分析: 在上届银牌学姐的帮助下 我们发现对于一个连通块若 \(m\) 个约束条件里共有 \(n\) 个点,那么答案一定是 \(n\) 或者 \(n-1\) 因为最多 \(n\) 条有向边可以将一个连通块变成一个强连通分量,而至少 \(n-1\) 条边才能保证 \(n\) 个点是联通的, 阅读全文
posted @ 2020-10-30 22:25 youth518 阅读(69) 评论(0) 推荐(0)
摘要: 题意: 题面 分析: 一句话题意:求任意两点之间各条简单路径上最小值的最大值的平均数(我好像也没说人话) 这题的 \(n\) 极大,所以我们没有办法优化正常的暴力,所以我们考虑将式子拆开来计算,我们考虑每一个点在什么情况下会被选,那肯定在当它是一对点各条简单路径上最小值的最大值的时候,我们发现各条简 阅读全文
posted @ 2020-10-30 22:15 youth518 阅读(66) 评论(0) 推荐(0)
摘要: 题意: 题面 分析: 第一反应是SNOI2017炸弹 这个题我们一看需要对于每一个数都输出一次答案,也就是说我们需要 \(log\) 或者 \(\sqrt n\) 的复杂度查询每一个点,那么我们思考一下就发现可以通过倍增处理 但是由于这个题每个点能扩展的范围是不一样的,所以倍增迭代时我们需要通过区间 阅读全文
posted @ 2020-10-30 21:54 youth518 阅读(77) 评论(0) 推荐(0)
摘要: 题意: 题面 分析: 我们发现每个数 \(n\) 是否被选,只与 \(\frac{n}{3},\frac{n}{2},2n,3n\) 有关,那么我们考虑建一张表,表上每一行按照 \(\times 3\) 的方式递增,每一列按照 \(\times 2\) 的方式递增,那么对于同一张表,任意上下左右相邻 阅读全文
posted @ 2020-10-30 08:53 youth518 阅读(42) 评论(0) 推荐(0)
摘要: 题意: 题意 分析: 推柿子 : \(A\times h-A\times min_h+B\times s-B\times min_s \le C\) 我们发现有三个变量,所以最暴力的复杂度是$O(n^3)$的,那么我们考虑怎么优化 好吧,我不看题解也不是很会优化 我们将式子转化一下,然后会发现对于每 阅读全文
posted @ 2020-10-27 21:51 youth518 阅读(73) 评论(0) 推荐(0)
摘要: 题意: 共有 4 种硬币。面值分别为 \(c_1,c_2,c_3,c_4\)。 某人去商店买东西,去了 \(n\) 次,对于每次购买,他带了 \(d_i\) 枚 \(i\) 种硬币,想购买 $s$的价值的东西。请问每次有多少种付款方法。 范围&性质:$1\le n\le 103,1\le c,d,s 阅读全文
posted @ 2020-10-21 11:28 youth518 阅读(92) 评论(0) 推荐(0)
摘要: 题意: 戳这里查看 分析: 我们可以通过手调样例发现最后整张图会沿着一条线分为两个部分,所以我们利用这条分界线进行DP,我们设$f[i][j][0]$表示现在在第$i$行第$j$列的格子右下角的点,0表示该向右延展,1表示向下扩展,每次方向变化时需要除以二,因为有一个原来可放可不放的格子不得不放,情 阅读全文
posted @ 2020-10-21 11:11 youth518 阅读(79) 评论(0) 推荐(0)
摘要: 题意: 戳这里查看 分析: 我们先不考虑区间的限制设出DP状态,$f[i][j]$表示枚举到第$i$个数,单调不降序列最后一位是$j$的方案数 转移方程就是: if(a[i]!=j) f[i][j]=f[i-1][j] else f[i][j]=f[i-1][k](k<=j) 我们发现可以用矩阵维护 阅读全文
posted @ 2020-10-21 11:02 youth518 阅读(154) 评论(0) 推荐(1)
上一页 1 ··· 9 10 11 12 13 14 15 16 17 ··· 19 下一页