摘要: 传送门 注意一个事情:当0下标是一个合法点的时候不能让它当哨兵,随意修改值! 题意大概是给一棵AVL树,要求删去 \(n-k\) 个点使其仍是AVL树且要求字典序最小 考场上觉得不可做就弃了 参考了dalao博客,dalao博客和dalao博客 有趣的是,这三篇博客分别是 \(O(n), O(nlo 阅读全文
posted @ 2021-11-01 16:59 Administrator-09 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 传送门 首先 \(\mu^2(i)=\sum\limits_{d^2|i}\mu(i)\) 于是 \(\sum\limits_{i=1}^n f(i) = \sum\limits_{d=1}^{\sqrt{n}}\mu(d)*d^2*s(\lfloor \frac{n}{d^2} \rfloor)\ 阅读全文
posted @ 2021-11-01 14:57 Administrator-09 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 传送门 题意即为每个区间的最大值要乘两次 所以放到笛卡尔树上,合并信息的时候根节点的值乘两次即可 Code: #include <bits/stdc++.h> using namespace std; #define INF 0x3f3f3f3f #define N 10000010 #define 阅读全文
posted @ 2021-11-01 14:29 Administrator-09 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 传送门 令 \(ans[i]\) 为从第 \(i\) 个位置开始向后走的最大收益 于是根据第 \(i\) 个位置随出来的数与 \(ans[i]\) 的大小关系按题意转移即可 但是卡精度,需要开long double u1s1,long double就真的没爆吗? 当数据范围都是1e9级别且需要小数的 阅读全文
posted @ 2021-11-01 14:27 Administrator-09 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 传送门 先注意一个事情:A集合里初始有个数0 然后令 \(suf[i]=\frac{1}{i+1}+\frac{1}{i+2}+...+\frac{1}{n+1}\) 这个suf是一个数在第 \(i\) 个位置的贡献 于是发现每个数在每个位置是等概率的,于是乘上即可 Code: #include < 阅读全文
posted @ 2021-11-01 14:26 Administrator-09 阅读(0) 评论(0) 推荐(0) 编辑