03 2021 档案

摘要:传送门:https://codeforces.com/gym/102956 题目大意: 统计满足下列条件的数列的方案数: 非空 严格递增 任意连续三个元素的异或和不为 \(0\) 元素小于等于给定的 \(n\) 分析: \(f[i]\) 表示以 \(i\) 为尾的方案数。 考虑状态转移: 如果 \( 阅读全文
posted @ 2021-03-31 19:35 HinanawiTenshi 阅读(80) 评论(0) 推荐(0)
摘要:传送门:https://codeforces.com/gym/102956/problem/D 题目大意:给出一个数列 \(a\) ,选出一个子序列 \(a_k\) ,使得子序列(长度记为 \(len\) ) \(\sum_{i=1}^{len-1}a_{k_i}\&a_{k_i+1}\) 最大。 阅读全文
posted @ 2021-03-30 21:52 HinanawiTenshi 阅读(167) 评论(0) 推荐(0)
摘要:A 抽屉原理 #include<bits/stdc++.h> using namespace std; int main(){ int a,b; cin>>a>>b; if(a<=8 && b<=8) puts("Yay!"); else puts(":("); return 0; } B 特判 n 阅读全文
posted @ 2021-03-29 20:05 HinanawiTenshi 阅读(89) 评论(0) 推荐(0)
摘要:本文不对匈牙利算法的证明作解释。 预备知识 二分图: 设 \(G=(V,E)\) 是一个无向图,如果顶点 \(V\) 可分割为两个互不相交的子集 \((A,B)\) ,并且图中的每条边 \((i,j)\) 所关联的两个顶点 \(i\) 和 \(j\) 分别属于这两个不同的顶点集 \((i \in A 阅读全文
posted @ 2021-03-22 12:04 HinanawiTenshi 阅读(124) 评论(0) 推荐(0)
摘要:例题传送门:https://www.luogu.com.cn/problem/P4147 大意:给出一张格子图,部分格子有障碍物,对于格子图上的所有矩形,我们称不包含障碍物的矩形为合法的,求合法的矩形的最大面积。 核心 对于每个点 \((i,j)\) ,求出其向上扩张最大距离后所能围成都最大矩形面积 阅读全文
posted @ 2021-03-19 20:22 HinanawiTenshi 阅读(87) 评论(0) 推荐(0)
摘要:# 目录 > 预备知识 > 普通的Nim游戏 > SG函数 ## 预备知识 ### 公平组合游戏(ICG) 若一个游戏满足: + 由两名玩家交替行动; + 游戏中任意时刻,合法操作集合只取决于这个局面本身; + 若轮到某位选手时,若该选手无合法操作,则这名选手判负; 则称该游戏为一个**公平组合游戏 阅读全文
posted @ 2021-03-17 20:21 HinanawiTenshi 阅读(443) 评论(2) 推荐(2)
摘要:传送门:https://www.acwing.com/problem/content/1133/ 这题的建图方式相当地恶心...不过这题的思想还是很有趣的。 分析 假如没有门,朴素的bfs就足够了,但这题有门,所以我们考虑增加一维状态,用来记录当前节点拥有的钥匙的情况。 对于当前节点(房间): 如果 阅读全文
posted @ 2021-03-14 21:43 HinanawiTenshi 阅读(88) 评论(0) 推荐(0)
摘要:引入 求 \(f[st]=\sum_{i\subseteq st} w[i]\) \(~\) \(~\) \((1)\) 解释: \(i\subseteq st\) 即 \(st\&i=i\) ,熟悉位运算的同学很容易看出 \(i\) 就是二进制表示的集合 \(st\) 中 \(st\) 的子集。 阅读全文
posted @ 2021-03-11 21:17 HinanawiTenshi 阅读(1829) 评论(3) 推荐(5)
摘要:传送门:https://www.acwing.com/problem/content/344/ 吐槽:这就是一道大膜你模拟啊。 不得不说写作课的时候想题大有启发(雾 分析 看到这题有负权,想到用SPFA,可惜这题范围很大,完全被卡死了(然而有人用SPFA优化过了),故考虑别的做法。 大致思路: 将道 阅读全文
posted @ 2021-03-09 22:14 HinanawiTenshi 阅读(101) 评论(0) 推荐(0)
摘要:向y总学习了斜率优化,写下这篇blog加深一下理解。 模板题:https://www.acwing.com/problem/content/303/ 分析 因为本篇的重点在于斜率优化,故在此给出状态转移方程: \(f[i]=\min(f[j]-(t[i]+s)*c[j]+t[i]*c[i]+s*c[ 阅读全文
posted @ 2021-03-04 20:12 HinanawiTenshi 阅读(245) 评论(0) 推荐(2)
摘要:传送门:https://codeforces.com/contest/1418 C 分析 注意到这题要按照顺序来取 \(1\) ,而且在取的过程中是没有后效性的,故考虑采取DP来解决。 \(f[i][1]\) 表示取完前 \(i\) 个数后,且最后一次抽取者是先手,先手所能取到 \(1\) 最少的个 阅读全文
posted @ 2021-03-03 21:22 HinanawiTenshi 阅读(79) 评论(0) 推荐(0)