题解 BZOJ 1023 [SHOI2008]cactus仙人掌图

题意是仙人掌图直径。 大概做法就是树的直径dp求法加上基环树的技巧特技。 改了好长好长时间啊。 参考题解: http://z55250825.blog.163.com/blog/static/150230809201412793151890/ 很细致。。 code: #include<cstdio>#include<cstring>#include<algorithm>using namespace std; int n,m; int H[50005],X[20000005],P[20000005],tot=1; int dp[50005]; inline void add(int x,int...

三月 11, 2015 · 1 分钟 · 193 字 · Ruotian

题解 BZOJ 1174 [Balkan2007]Toponyms

给你一个字符集合,你从其中找出一些字符串出来. 希望你找出来的这些字符串的最长公共前缀*字符串的总个数最大化. 这个问题很简单吧..用trie随...

三月 10, 2015 · 1 分钟 · 381 字 · Ruotian

题解 BZOJ 2648 SJY摆棋子

双倍经验2716. KD-Tree模板题。 注意一下"nth_element()" 参考: http://blog.csdn.net/jiangshibiao/article/details/34144829 code: #include<cstdio> #include<cstring> #include<algorithm> using namespace std; int n,m,D,root,x,y; struct N{ int d[2]; int l,r; int min[2];...

一月 7, 2015 · 1 分钟 · 206 字 · Ruotian

题解 BZOJ 1313 取整矩阵

题目 题里的矩阵是这样的: A11 A12 A13… A1n-1 B1 A21 ………. A2n-1 B2 …… An-11 An-12….An-1n-1 Bn-1 C1 C2 C3… Cn-1 0 需要取整。每个元素大概有两种选择,一种是floor另一种是ceil。 这两种之间差...

一月 7, 2015 · 1 分钟 · 373 字 · Ruotian

SPOJ QTREE系列

375.QTREE 给你一棵n个点$n-1$条边的树,支持修改一条边的边权、查询两点之间路径上的最大边权。 树链剖分+线段树基础题 code: #include<cstdio> #include<cstring> #include<algorithm> using namespace std; int n; int H[10005],X[20005],P[20005],tot, w[20005],E[20005],num[20005]; inline void add(int...

一月 6, 2015 · 2 分钟 · 914 字 · Ruotian

SPOJ GSS 系列

SPOJ GSS系列是一系列序列维护的问题。 大部分用线段树,Splay等可以解决。 1043. GSS1 题意:给定长度为N的数串,M个询问查询[a,b]的的最大连续子...

一月 6, 2015 · 2 分钟 · 949 字 · Ruotian

题解 BZOJ 2527 [Poi2011]Meteors

一个叫做整体二分的东西。 单个国家可以二分。 为了节约时间,可以把情况相同的一同二分。 可以用树状数组做必要的统计。 时间复杂度不明。 code: #include<cstdio>#include<cstring>#include<algorithm>#include<vector>using namespace std; int n,m; vector<int>...

一月 6, 2015 · 1 分钟 · 212 字 · Ruotian

题解 BZOJ 3707 圈地 计算几何

题解: 简单的说就是给定平面上n个点,求这n个点组成三角形的最小面积。 如果分别枚举三个点的话是$O(n^3)$的,时间无法承受。 如果枚举了两个...

九月 18, 2014 · 1 分钟 · 499 字 · Ruotian

题解 BZOJ 3714 [PA2014]Kuglarz

题解: 参考小胖的奇偶那道题。 那道题用的并查集维护。 如果知道 i..j 之间奇偶性的话,实际上知道的是 sum[j]-sum[i-1]的奇偶性(sum为前...

九月 14, 2014 · 1 分钟 · 246 字 · Ruotian