
倍增
Park Corsa
吃早餐,多运动,不熬夜,常反思
展开
-
[FROM LUOGU]Mivik的神力
传送门SOL首先max的答案改变肯定是在每一个数的右边第一个比它大的位置,用单调栈记录一下,连个边就好了说白了,就是从l开始,每次跳边去找右边第一个比它大的数,依次统计答案显然可以倍增实现跳链的过程(然而我一开始并没有意识到我写的是倍增)注意 一定一定一定要加有向边,否则多半要挂的代码:#include<bits/stdc++.h>#define re register...原创 2019-11-10 12:41:03 · 447 阅读 · 0 评论 -
[FROM LUOGU]开车旅行
传送门SOL70pts的很好做,暴力预处理之后直接回答即可,复杂度O(N2)O(N^2)O(N2)100pts的其实只需要加一个倍增(和一个Set/双向链表)先说说预处理,设nxt[i][0]nxt[i][0]nxt[i][0],dis[i][0]dis[i][0]dis[i][0]表示从iii出发到最近的点及到这个点的距离设nxt[i][1]nxt[i][1]nxt[i][1],di...原创 2019-10-28 11:00:26 · 117 阅读 · 0 评论