摘要: 传送:https://vjudge.net/problem/TopCoder 14084 只是利用了笛卡尔树的性质,设f[i][j]为区间[i,j]的贡献,然后枚举中间最大的点k来转移,首先是两侧小区间贡献的,f[i][k 1]\ fac[j k]+f[k+1][j]\ fac[k i],大概是方案 阅读全文
posted @ 2019-05-03 20:33 lokiii 阅读(196) 评论(0) 推荐(0) 编辑
摘要: 枚举起点,然后设f[i][j]为上凸壳上一个点是i当前点是j的最大面积,g是下凸壳,然后合并的时候枚举结束点t合并上下凸壳即可 这样的好处是每次转移都是往凸多边形里加一个三角形(s,i,j),所以判断转移合法只要预处理出所有三角形是否合法即可,同时预处理出三角形面积,转移就是f[j][k]=max( 阅读全文
posted @ 2019-05-03 16:59 lokiii 阅读(296) 评论(0) 推荐(0) 编辑
摘要: 传送:https://dmoj.ca/problem/ioi17p3 参考:https://blog.csdn.net/qq_27327327/article/details/80711824 妙啊……首先题意就是走到一个包含充电点的环里就能赢 因为出度至少是1,所以如果所有点都能到充电点那么全部是 阅读全文
posted @ 2019-05-03 12:09 lokiii 阅读(218) 评论(0) 推荐(0) 编辑