摘要: 题目link:https://www.luogu.com.cn/problem/P3007 $2-SAT$ 裸题。 建图,设第 $i$ 号点表示支持第 $i$ 个法案,第 $i$ $+$ $n$ 号点表示反对第 $i$ 个法案。 对于每头奶牛的两个条件,因为题目要求必须满足其一,那就对奶牛的两个条件 阅读全文
posted @ 2021-02-21 21:41 louis_11 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 题目link:https://www.acwing.com/problem/content/107/ 首先考虑将这题化简一下。容易得出交换两行和交换两列的操作是不会互相影响的,即交换了两列之后,每一行的摊位数量不变,交换行同理。 因此可以对于行进行操作,再对列进行操作(两者做法相同)。 先不管列,就 阅读全文
posted @ 2021-01-25 17:46 louis_11 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 题目link:https://www.acwing.com/problem/content/102/ 对于此题,因为每个数都比较的大,所以差分进行处理。 设原数组为 $a[i]$ ,差分后数组为 $d[i]$ $=$ $a[i]$ $-$ $a[i$ $-$ $1]$。 则容易得出原题转换为: 给定 阅读全文
posted @ 2021-01-18 22:17 louis_11 阅读(111) 评论(0) 推荐(0) 编辑
摘要: 题目link:https://www.luogu.com.cn/problem/P2114 首先考虑暴力:直接枚举 $0$ ~ $m$ ,即初始攻击力,然后计算出其通过每扇门后的值, $ans$ 记录最大值即可。时间复杂度 $O(n$ $*$ $m)$ 。 考虑优化:首先可以知道 & (与) 、| 阅读全文
posted @ 2021-01-15 10:01 louis_11 阅读(103) 评论(0) 推荐(0) 编辑
摘要: 题目link:https://www.acwing.com/problem/content/93/ 注意,本题解中,存点为 $0$ ~ $n$ $-$ $1$ ,二进制最低位为第 $0$ 位。 二进制压缩状态,第 $a$ 位为 $1$ 表示第 $a$ 个点走过了,否则没有走过。 考虑朴素的 SPFA 阅读全文
posted @ 2021-01-14 20:38 louis_11 阅读(77) 评论(0) 推荐(1) 编辑
摘要: 序列操作 单点加,前缀和查询: 树状数组直接维护即可。 区间加,单点查询: 设原数组为 $a[i]$ ,并更新一个数组 $c[i]$ $=$ $a[i]$ $-$ $a[i$ $-$ $1]$即为差分数组; 每次区间 $(l,$ $r)$ $+$ $x$ 直接$c[l]$ $+$ $x$,c[r + 阅读全文
posted @ 2020-12-03 21:46 louis_11 阅读(68) 评论(0) 推荐(0) 编辑
摘要: 题目link:https://www.luogu.com.cn/problem/P6202 本题推式子即可。 首先先模拟一下密码更新的过程,设一共有 $n$ 头牛,密码初始值分别为 $c[1]$ , $c[2]$ , $c[3]$ , $...$ , $c[n]$,密码初始的总和为$sum$(以后的 阅读全文
posted @ 2020-11-30 19:09 louis_11 阅读(67) 评论(0) 推荐(0) 编辑
摘要: 题目link:https://loj.ac/problem/10013 经典的三分裸题。 三分主要是用来求一个满足单峰性的函数的最大/最小值的一种算法,其原理和二分基本一样。假设求最小值,首先把选择区域分为三段,然后比较这两个三等分点的函数值谁更小一些,大的那一边就不要了(如果大的是靠左的,那就连着 阅读全文
posted @ 2020-11-03 20:03 louis_11 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 题目link:https://loj.ac/problem/10015 这道题虽说是二分里的,但是我没用二分的做法。 首先我的想法是直接找到任意两点之间的最大距离即可,但是后来写完交上去发现不对,之后分析了一下发现两个点成为同一个连通块是可以通过另外一个连通块更新距离的,因为另一个连通块也可以扩散, 阅读全文
posted @ 2020-11-01 20:05 louis_11 阅读(117) 评论(0) 推荐(0) 编辑
摘要: 题目link:https://loj.ac/problem/10011 求最大的距离最小,典型的二分题。二分答案距离,然后贪心判断是否可行即可。别忘了要先排序。 1 #include <bits/stdc++.h> 2 #define INF 0x3f3f3f3f 3 using namespace 阅读全文
posted @ 2020-11-01 19:58 louis_11 阅读(132) 评论(0) 推荐(0) 编辑