
hdu
文章平均质量分 77
zzucaicai
科学院南路6号
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
spoj375 树链剖分
树链剖分就是线段树在tree上的应用,把边标号然后存入线段树,支持区间操作。标号方式使用重边的方式可以使根到任意叶子的链数少于log n。 上代码!!!第一道树链剖分 还是有点小激动的 #include #include #include #include #include #include #include #include #include #define N 1001原创 2015-10-02 14:49:16 · 301 阅读 · 0 评论 -
hdu4258 斜率优化dp
参考下面文章http://blog.youkuaiyun.com/balloons2012/article/details/7912296 感觉最重要的是 和当前位置有关的斜率,随下表递增单调。。这样凸包才可以求得最优解 #include #include #include #define N 1000010 #define LL long long using namespace std; s原创 2015-10-23 08:53:21 · 317 阅读 · 0 评论 -
hdu5446 卢卡斯+中国剩余定理
一道题集合了卢卡斯,中国剩余定理,费马小定理,扩展欧几里德 也是挺厉害的。 卢卡斯求得摸线性方程组,在用中国剩余定理解,会爆long long,用扩展加法 #include #include #include #include #include #include #include #include #define N 100005 #define P 105 using n原创 2015-09-18 21:35:14 · 428 阅读 · 0 评论 -
hdu5442 后缀数组
第一道AC的后缀数组,总算也是深入理解了各个数组的意义 height数组连续>=length,就说明两个顺序相同,保证字母序最大的前提下,先开始位置小 再顺时针优先于逆时针 #include #include #include using namespace std; const int N = int(2e5)+10; inline int max(int a ,int b){原创 2015-09-18 21:41:57 · 391 阅读 · 0 评论 -
hdu5452 离线最近公共祖先
题意是将一颗树cut一条边成两棵树,求生成的两棵树之间的连接边的数目。对于每条不是树上的边, a节点加1, b节点加1,LAC()原创 2015-09-23 11:17:03 · 835 阅读 · 0 评论 -
hdu5542 树状数组优化dp
南阳比赛的题目,队友一发AC,我也来试试 题意很容易想到n^3的动态规划,dp[i][j]表示到i位置取j长度的种类,这样dp[i][j] = sum( dp[k][j-1], iff a[k] #include #include #include #include #include #include #include #define N 1005 #define MOD 10原创 2015-11-02 09:49:15 · 1397 阅读 · 0 评论 -
hdu 2586在线LCA RMQ
题意很明显是LCA,dis[a]+dis[b]-2*dis[LCA(a, b)]。第一次写RMQ,下起来也是蛮简单的。学会了在线LCA,哈哈哈哈#include #include #include #include #include #define N 40010 using namespace std; vector > adj[N]; int dis[N], vi[N<<1], d原创 2015-10-27 09:28:06 · 378 阅读 · 0 评论 -
hdu5569 RMQ
#include #include #include #include #include #include #include #include #include #include #include #define LL long long #define PB push_back #define N 50050 using namesp原创 2015-12-13 09:56:54 · 333 阅读 · 0 评论 -
hdu5603 树状数组
bestcode的题目感觉挺巧妙的,给一些区间(n 尝试了两种裸的线段树都超时了。 第一种是 对于每组点,首先加点到树状数组,然后对于每个区间求该区间中的点数,大于0则计数。时间为O(n*m) 跪了。。 第二种是 用lazy线段树,每个节点放覆盖该节点表示范围的区间的标号。这样初始化将所有区间加入线段树。对一每个组查询每个点,从根节点范围开始查询该点路径上经过的区间,用set保证唯一。时间原创 2015-12-30 09:46:01 · 542 阅读 · 0 评论