单调栈 其实是单调栈的变种 维护up,left,right,表示一个点能向左向右向上最大扩展距离,ans就是最大的left*rigth*up up[i][j]=Map[i-1][j]==1?1:Map[i-1][j]+1 left和right 用单调栈求,每次碰见障碍就把栈中元素弹出,栈中元素左端点 ...
分类:
其他好文 时间:
2017-08-17 10:50:45
阅读次数:
159
维护一个保护集合$S$,表示哪些点$A$可能胜利。 首先将所有绿点加入$S$。 $1.$对于一个不在$S$的$A$点,若它存在某个后继在$S$中,则将其加入$S$。 $2.$对于一个不在$S$的$B$点,若它所有后继都在$S$中,则将其加入$S$。 通过拓扑可以$O(n+m)$求出$S$集合,那么剩 ...
分类:
其他好文 时间:
2017-08-17 10:32:06
阅读次数:
104
裸题... 依旧是写了BIT和线段树两种(才不是写完线段树后才想起来可以写BIT呢 怎么卡常数都挺大...QAQ ccz和yy的写法好快哇 BIT: #include<iostream> #include<cstdlib> #include<cstring> #include<cstdio> #in ...
分类:
其他好文 时间:
2017-08-17 00:35:20
阅读次数:
164
#include <stdio.h> #include <string.h> #include <stdlib.h> #define ZERO 0 const int FIRST_CHAR = '0'; char num[11111][20] ; typedef struct node { stru ...
分类:
其他好文 时间:
2017-08-16 21:52:28
阅读次数:
120
第一次写水平序凸包,感觉跟极角序凸包差不多 凸包的删除看上去不太可做,但我们发现这题没有强制在线,所以我们离线统计答案 离线之后把操作反序,删除就变为插入了 用平衡树维护凸包,每插入一个点,就不停删除它左右两边不满足凸包性质的点 每个点只会被插入删除各一次,不会超时 ...
分类:
其他好文 时间:
2017-08-16 15:20:17
阅读次数:
111
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=4255 这特喵的不就是河南省某届省赛那道开关灯的强化版题目吗。。。。 一是数据增强了可能爆int,所以用的LL才A,还有就是给出的坐标不一定有序注意排序,还有起点不一定是送餐点,要 ...
分类:
其他好文 时间:
2017-08-16 13:13:57
阅读次数:
136
题目太长不表 <--无形传送,最为致命 学习一点数学期望的基础,预处理最短路,然后加上DP即可。(废话) 理解决策和结果的差别: 在这里每阶段的决策有两个:申请|不申请 结果有两个:换|不换 然而二者不是一一对应的关系; 而且决策意味着状态,结果只用于计算期望 为什么呢 因为答案要的就是对于某种决策 ...
分类:
其他好文 时间:
2017-08-16 11:26:48
阅读次数:
142
【BZOJ2339】[HNOI2011]卡农 题解:虽然集合具有无序性,但是为了方便,我们先考虑有序的情况,最后将答案除以m!即可。 考虑DP。如果我们已经知道了前m-1个集合,那么第m个集合已经是确定的了。因为内层集合的n个元素可以随便出现,那么总数就是A(2^n-1,m-1)。但是可能存在不合法 ...
分类:
其他好文 时间:
2017-08-15 21:06:42
阅读次数:
141
【BZOJ10492】[HAOI2008]硬币购物 Description 硬币购物一共有4种硬币。面值分别为c1,c2,c3,c4。某人去商店买东西,去了tot次。每次带di枚ci硬币,买si的价值的东西。请问每次有多少种付款方法。 硬币购物一共有4种硬币。面值分别为c1,c2,c3,c4。某人去 ...
分类:
其他好文 时间:
2017-08-15 21:03:11
阅读次数:
124
【BZOJ2085】[Poi2010]Hamsters Description Tz养了一群仓鼠,他们都有英文小写的名字,现在Tz想用一个字母序列来表示他们的名字,只要他们的名字是字母序列中的一个子串就算,出现多次可以重复计算。现在Tz想好了要出现多少个名字,请你求出最短的字母序列的长度是多少。 T ...
分类:
其他好文 时间:
2017-08-15 19:58:24
阅读次数:
139