随笔分类 -  T - 思维题

摘要:CSP-S2020 儒略日 模拟 分几段来做: 公元前 1582年前 1582年 1600年及以前 1600年后 每次确定到哪四年就可以了,四年之内暴力每一月。 时间复杂度 \(O(48n)\)。 #include<bits/stdc++.h> using namespace std; #defin 阅读全文
posted @ 2020-11-10 20:42 starusc 阅读(399) 评论(0) 推荐(0)
摘要:HNOI2012与非 发现用与非可以实现一切操作 \[ not A=AnandA \] \[ AorB=not((notA)nand(notB)) \] \[ AandB=not(AnandB) \] \[ AxorB=not(((notA)and(notB))or(AandB)) \] 发现若n个 阅读全文
posted @ 2020-06-06 17:24 starusc 阅读(194) 评论(0) 推荐(0)
该文被密码保护。
posted @ 2020-04-29 21:04 starusc 阅读(0) 评论(0) 推荐(0)
摘要:换个角度思考,算贡献 总共$n!$种,不是$Cat_n$种,无法像卡特兰数那样DP 20pts 阶乘枚举 SOL: 思考方式:点不行,我们算每条边的贡献!!! 枚举边(枚举点i,边只这个点通向其fa的边),再枚举sz(子树大小) 1. 每对贡献$sz (n sz)$ 2. 子树内的方案$sz!$,与 阅读全文
posted @ 2020-04-01 15:22 starusc 阅读(136) 评论(0) 推荐(0)
摘要:心路历程 50pts 黑周围选奇数条边,白周围选偶数条边,然后$nm^3$异或消元 初始是白是什么意思啊? 又或者删一个点有什么便捷算法? SOL 貌似 按顺序消元会得到一些良心结论 一条边$u,v$,我们把第v行变成第u行异或第v行就消掉了这条边(u,v合并后的星点) 若一条边的两个端点已经在一个 阅读全文
posted @ 2020-03-31 21:19 starusc 阅读(152) 评论(0) 推荐(0)
摘要:线段树维护单调栈 又是一道非常棒的思维题!!! SOL: 问题转化(倒着思考) t时刻在某点,每次可以向后走一步或留在原地,然后t减1 每个点在$T_i$消失,求最小的$t$使得所有点都可以在消失前被访问 于是惊奇地发现留在原地一定不优,会一直往前走 破环为链(2倍),对于$i\in[n,2n)$走 阅读全文
posted @ 2020-03-31 14:55 starusc 阅读(172) 评论(0) 推荐(0)
摘要:牛逼二进制 x&0=0,x|1=1 我们把$\&\to0,|\to1$,把操作用01串代替 于是转化为比大小的题目 桶排然后记录每个串的值方便求答案 时间复杂度$O(nm)$ 阅读全文
posted @ 2020-03-30 19:44 starusc 阅读(176) 评论(0) 推荐(0)
摘要:非常棒的思维题!! 半天都做不起,我咋这么菜…… 一、 递增序列将每位 i就变成了非递减序列 于是我们将$a_i i$,最后将答案$+i$变成了求非递减序列 二、 考虑初中数学题 求$|x a|+|x b|$的最小值,显然$x\in[a,b](a using namespace std; inlin 阅读全文
posted @ 2020-03-30 17:28 starusc 阅读(167) 评论(0) 推荐(0)
摘要:大胆猜结论DP 很有意思的题目 考虑用DP模拟两人 $f[n][m][k],k$轮不知道后能否知道 首先$f[n][m][k]=f[n][m][k 2]$ 用$Alice$举例,$n m=x y$则除$(n,m)$外的$(x,y)$都要在$k 1$轮得知才能确定$(n,m)$,$Bob$推理同理 求 阅读全文
posted @ 2020-03-26 21:11 starusc 阅读(176) 评论(0) 推荐(0)
摘要:首先有奇环肯定不行 手算一下发现下列两种不行: 不行的: 1. 奇环 2. 形成3个及以上的环$(m n+1)$ 3. $m=n+1$即两个偶环相交是相交的两个点之间的三条链不满足$2+2+偶数$ "详解" 用$dfs$+拓扑排序判一下即可 这个图有点特殊,咋一看出来是3个环,还以为是YES,但按上 阅读全文
posted @ 2020-03-26 16:47 starusc 阅读(289) 评论(0) 推荐(0)
该文被密码保护。
posted @ 2020-03-23 22:43 starusc 阅读(0) 评论(0) 推荐(0)
摘要:若是有双向连边,那么双向边连通的集合可视为一个集合,集合内的所有边都已连接,任何一个指向这其中一点的边相当于指向了所有点 但是并不是一个点指向另一个点就相当于它所在的集合指向了那个点 用并查集维护集合,$set$维护每个集合的出边和入边,启发式合并即可 注意,合并一次后有些边的加入也是子问题,递归合 阅读全文
posted @ 2020-03-23 22:04 starusc 阅读(258) 评论(0) 推荐(0)
摘要:二分图! 一只变色龙与另外的变色龙颜色相同只可能有三种情况——喜欢,被喜欢和原颜色一样 我们将这样的变色龙对连上边,那么因为性别不同的限定,一定是一个二分图 这样可以二分,若加入$u$后颜色数不变那么这里面一定存在可以连边的变色龙对 我们可以黑白染色然后分开二分,这样原集合大小即为颜色数 得到之后, 阅读全文
posted @ 2020-03-23 21:56 starusc 阅读(388) 评论(0) 推荐(0)
摘要:问题拆解,好题&难题 发现:每个点经历了一次修改后,若$x_iy_j$(貌似并没有用到?) 考虑线段树分治: 每个询问记录修改时间区间 每个时间段的区间将询问的点按$x$或$y$排序 用动态开点线段树维护最大值算出每个修改的区间 例$H$操作,在长度小于$l$的区域,可能会被$V$操作扫走,所以每次 阅读全文
posted @ 2020-03-23 15:08 starusc 阅读(591) 评论(0) 推荐(0)
摘要:考虑性质 $n1e5$ SOL: $a_1 a_2+a_3 a_4 a_5$ $a_1 a_2 a_3 a_4+a_5$ 上式相加只剩前面的乘法,所以我们要算的是所有前缀积 $ans=\sum_{i=1}^{n 1}s_i 2 3^{n i 1}+s_n,s_i=\prod_{j=1}^ia_j$ 阅读全文
posted @ 2020-03-22 14:16 starusc 阅读(153) 评论(0) 推荐(0)
摘要:利用不等式解题,搜索剪枝 SOL: 首先可以发现保证自己不死和怼大佬是可以分开的 一个$n^2DP$算出最多可以用来怼大佬的天数,问题就转化为用$n$天怼大佬是否成功 先求出所有可能的讽刺值及其天数, 惊人发现竟存的下!看来要多尝试才好 这样攻击一次和零次的都可以轻易判断 攻击两次(讽刺值$f1,f 阅读全文
posted @ 2020-03-19 13:55 starusc 阅读(125) 评论(0) 推荐(0)