摘要:
```cpp / 首先解方程得到具体有多少个是大于的情况 然后dp求出f[i]是至少有i个大于的情况 最后容斥一下就好了 / include include include include include define ll long long define M 2020 define mmp ma
阅读全文
posted @ 2019-04-09 22:34
fastle
阅读(87)
推荐(0)
编辑
摘要:
```cpp / 容斥加上哈希 首先我们可以2 ^ 6枚举相同情况, 然后对于这些确定的位置哈希一下统计方案数 这样我们就统计出了这些不同方案的情况, 然后容斥一下就好了 / include include include include include define ll unsigned lon
阅读全文
posted @ 2019-04-09 21:33
fastle
阅读(103)
推荐(0)
编辑
摘要:
```cpp / 考验观察法?? 可以发现最终答案等于所有作为圆心的点求出凸包的周长加上一个圆的周长 向量旋转 (x1, y1) 相较于 (x2, y2) 旋转角c 答案是 (dtx cosc dty sinc + x2, dty cosc + dtx sinc + y2) 貌似我的凸包也不鲁棒耶
阅读全文
posted @ 2019-04-09 20:40
fastle
阅读(118)
推荐(0)
编辑
摘要:
$$ f[1] = 0 $$ $$ f[i] = 1 + \frac{1}{m} \sum_{j = 1} ^ n f[gcd(i, j)] \ \ \ \ \ \ (i != 1) $$ 然后发现后面这一块gcd的个数只可能是i的约数, 那么考虑枚举约数 $$ f[i] = 1 + \frac{1
阅读全文
posted @ 2019-04-09 17:18
fastle
阅读(123)
推荐(0)
编辑
摘要:
```cpp / 排序之后每个点往前能选择的是一段区间, 所以我们实际上转移位置是确定的 然后f[i][j]表示到了i选了j段的最大贡献, 显然状态数是O(n^2)的, 转移是O(1)的 / include include include include include define ll long
阅读全文
posted @ 2019-04-09 14:30
fastle
阅读(239)
推荐(0)
编辑
摘要:
```cpp / 区间dp题目, 考虑当前区间l,r 是可以枚举最后一次拿的分界点来考虑最右边节点是不是具有贡献 / include include include include include define ll long long define M 550 define mmp make_pa
阅读全文
posted @ 2019-04-09 14:11
fastle
阅读(94)
推荐(0)
编辑