上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 79 下一页
摘要: [NOI2018]冒泡排序 题解 性质+模型转化 首先,一个排列是“好”的,当且仅当:每个数,要么是前缀最大值,要么是后缀最小值。(讨论i和Pi的关系即可证明) 也就是,排列不能存在>=3的下降子序列! 换句话说,假设之前填了i个数,最大值是mx,那么第i+1个数,要么是剩下数的最小值,要么是比mx 阅读全文
posted @ 2019-06-16 17:28 *Miracle* 阅读(381) 评论(0) 推荐(0) 编辑
摘要: 子矩阵求和 http://hihocoder.com/discuss/question/3005 声明一下: n是和x一起的,m是和y一起的 x是横着的,y是纵着的,x往右为正,y往下为正 (非常反常规的定义) 性质好题 看起来无从下手。 两个关键性质: 证明挺显然的。画画图 同余方程exgcd即可 阅读全文
posted @ 2019-06-16 10:51 *Miracle* 阅读(241) 评论(0) 推荐(0) 编辑
摘要: https://arc032.contest.atcoder.jp/tasks/arc032_4# 切比雪夫距离,放在3000*3000的平面上, 一个集合就是恰好包含这个集合的矩形,价值是矩形长、宽较大的一个。 先处理价值最小: 可以二分。 也可以不二分。 f[i][j]表示,(j,i)为左上角的 阅读全文
posted @ 2019-06-16 08:11 *Miracle* 阅读(206) 评论(0) 推荐(0) 编辑
摘要: 考场不要降智。 不一定是连续的一段放在一块,。。。 容斥。f[s]=g[s]-∑f[t]*g[s-t] t必须包含1 子集卷积 注意,子集卷积过程与s包含1无关,最后再清空即可。 #include<bits/stdc++.h> #define reg register int #define il 阅读全文
posted @ 2019-06-15 15:59 *Miracle* 阅读(257) 评论(0) 推荐(0) 编辑
摘要: CF1081G Mergesort Strikes Back 概率好题 之前做过一些考察排序本质的题目 如:[USACO18OPEN]Out of Sorts G 冒泡排序理解之一 混合快排:[USACO18OPEN]Out of Sorts P 冒泡排序理解之二 本题考察归并排序。 考虑所有排列中 阅读全文
posted @ 2019-06-14 21:11 *Miracle* 阅读(362) 评论(0) 推荐(0) 编辑
摘要: 我怎么这么zz啊。。。。 法一: 枚举最后一层的方案:没了。。。 法二: 生成函数:没了。 k*F^k(x),就是错位相减。 法三: 我的辣鸡做法:生成函数 求方案数,用的等比数列求和。。。。多项式快速幂,,O(nlog^2n) 求贡献和,构造G,然后求导,,,, O(nlog^2n) 慢的一批。。 阅读全文
posted @ 2019-06-14 12:03 *Miracle* 阅读(205) 评论(0) 推荐(0) 编辑
摘要: 题面 题意转化为: 判断每个点所在的圆有多长的弧度角位于多边形内部。 然后就很暴力了。 每个点P,直接找到多边形和这个圆的所有交点,按照距离P的角度排序。 找交点,直接联立二元二次方程组。。。。 需要判断一段弧是否在多边形内部。 向量随机旋转角度,判断点是否在多边形内部即可。 如果该点在多边形边上, 阅读全文
posted @ 2019-06-14 10:11 *Miracle* 阅读(300) 评论(0) 推荐(0) 编辑
摘要: [CTSC2018]青蕈领主 题解 首先,连续段要知道结论: 连续段要么不交,要么包含 所以是一棵树!每个位置的father是后面第一个包含它的 树形DP! 设dp[x],x为根的子树,(设管辖的区间长度为len,也即L[x]),用1~len的数填充,满足L的方案数 也就是,每个son内部合法, 给 阅读全文
posted @ 2019-06-13 20:40 *Miracle* 阅读(504) 评论(0) 推荐(0) 编辑
摘要: 常用的套路 各种合法矩形限制、合法区间对的限制,都可以转化为矩形面积并 如:省选模拟赛第十四轮、[ZJOI2019]语言 还有直接矩形:(HDU 1542) Atlantis 矩形面积并——扫描线、CF1086F Forest Fires 就是一个扫描线 线段树每个区间有一个c值,表示这个区间被完全 阅读全文
posted @ 2019-06-13 17:11 *Miracle* 阅读(1085) 评论(0) 推荐(0) 编辑
摘要: CF1086F Forest Fires 有点意思的题目 直接统计每个格子的val是非常难办的。很难知道每秒新出来多少个格子 设$F[i]$表示,前i时刻覆盖的格子的数量 则,$ans=\sum_{i=1}^T i*(F[i]-F[i-1])=T*F[T]-\sum_{i=0}^{T-1} F[i] 阅读全文
posted @ 2019-06-13 17:01 *Miracle* 阅读(355) 评论(0) 推荐(0) 编辑
上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 79 下一页