上一页 1 ··· 15 16 17 18 19 20 21 22 23 ··· 190 下一页
摘要: 题意 "题目链接" Sol 一个显然的思路是维护最大最小值以及最大最小值的覆盖标记。 https://paste.ubuntu.com/p/WXpBvzF6Y2/ 但实际上因为这题只需要输出最后的操作序列,那么我们只维护最大最小值的覆盖标记即可。 也就是对于每一个节点,把本层的最大最小值下传之后清除 阅读全文
posted @ 2019-01-03 15:30 自为风月马前卒 阅读(254) 评论(0) 推荐(0) 编辑
摘要: 题意 "题目链接" Sol 严格众数只会出现一次,那么建出主席树,维护子树siz,直接在树上二分即可 cpp include define LL long long using namespace std; const int MAXN = 2e6 + 10; inline int read() { 阅读全文
posted @ 2019-01-03 11:45 自为风月马前卒 阅读(232) 评论(0) 推荐(0) 编辑
摘要: 题意 "题目链接" Sol 单调栈板子题。。 找到向左第一个比他大的位置,然后判断一下就可以了 cpp include // define int long long define LL long long using namespace std; const int MAXN = 1e6 + 10 阅读全文
posted @ 2019-01-03 09:05 自为风月马前卒 阅读(105) 评论(0) 推荐(0) 编辑
摘要: 题意 "题目链接" Sol 二维数点板子题 首先把询问拆成四个矩形 然后离散化+树状数组统计就可以了 cpp // luogu judger enable o2 include define LL long long using namespace std; const int MAXN = 4e6 阅读全文
posted @ 2019-01-03 09:03 自为风月马前卒 阅读(369) 评论(0) 推荐(0) 编辑
摘要: 题意 "题目链接" Sol 介绍一种神奇的点分治的做法 啥?这都有根树了怎么点分治?? 嘿嘿,这道题的点分治不同于一般的点分治。正常的点分治思路大概是先统计过重心的,再递归下去 实际上一般的点分治与统计顺序关系不大,也就是说我可以先统计再递归,或者先递归再统计。 但是这题不单单是统计,它是dp,存在 阅读全文
posted @ 2019-01-02 21:39 自为风月马前卒 阅读(332) 评论(0) 推荐(0) 编辑
摘要: 题意 "题目链接" Sol 首先在原矩阵的右侧放一个单位矩阵 对左侧的矩阵高斯消元 右侧的矩阵即为逆矩阵 cpp // luogu judger enable o2 include define LL long long using namespace std; const int MAXN = 2 阅读全文
posted @ 2019-01-02 17:54 自为风月马前卒 阅读(520) 评论(3) 推荐(0) 编辑
摘要: 题意 "题目链接" Sol 考虑直接对询问的集合做MinMax容斥 设$f[i][sta]$表示从$i$到集合$sta$中任意一点的最小期望步数 按照树上高斯消元的套路,我们可以把转移写成$f[x] = a_x f[fa] + b_x$的形式 然后直接推就可以了 "更详细的题解" cpp inclu 阅读全文
posted @ 2019-01-02 16:47 自为风月马前卒 阅读(315) 评论(0) 推荐(0) 编辑
摘要: 题意 "题目链接" Sol mdzz这题真的太恶心了。。 首先不难看出这就是个高斯消元解方程的板子题 $f[x] = \sum_{i = 1}^n f[to(x + i)] p[i] + ave$ $ave$表示每次走的期望路程 然后一件很恶心的事情是可以来回走,而且会出现$M N$的情况(因为这个 阅读全文
posted @ 2019-01-02 16:46 自为风月马前卒 阅读(467) 评论(0) 推荐(0) 编辑
摘要: 题意 "题目链接" $N$个物品,每次得到第$i$个物品的概率为$p_i$,而且有可能什么也得不到,问期望多少次能收集到全部$N$个物品 Sol 最直观的做法是直接状压,设$f[sta]$表示已经获得了$sta$这个集合里的所有元素,距离全拿满的期望,推一推式子直接转移就好了 主程序代码: cpp 阅读全文
posted @ 2019-01-01 23:08 自为风月马前卒 阅读(367) 评论(0) 推荐(0) 编辑
摘要: 题意 "题目链接" Sol 解题的关键是看到题目里的提示。。。 设$f[i]$表示到第$i$天所持有软妹币的最大数量,显然答案为$max_{i = 1}^n f[i]$ 转移为$f_i = max(f_{i 1}, A_i \frac{f_j R_j}{A_j R_j + B_j} + B_i \f 阅读全文
posted @ 2019-01-01 20:26 自为风月马前卒 阅读(253) 评论(0) 推荐(0) 编辑
上一页 1 ··· 15 16 17 18 19 20 21 22 23 ··· 190 下一页

Contact with me