- 博客(11)
- 资源 (1)
- 收藏
- 关注
原创 模拟题合集
模拟题往往被归类到水题,却是最耗时间和精力的,多练练模拟可以提升自己的细心程度hdu 4452 Running Rabbits(基础) hdu 1497 Simple Library Management System(能用stl尽量用)hdu 1107 武林(注意层次细节)hdu 3795 Diff(一直AC不了,真想一头撞死)
2013-09-27 08:39:00 652
原创 hdu 3804 Query on a tree
STL中multiset容器的应用,一开始还以为是树链剖分+线段树|RMQ,看来别想太复杂就好#include #include #include #include #include using namespace std;typedef long long ll;const int MAXN = 100010;#ifndef __GNUC__#pragma commen
2013-09-25 13:53:32 709
原创 hdu 3966 Aragorn's Story(树连剖分)
树连剖分,线段树树链剖分的核心就是将树线性化,从而简化对其的操作#include #include #include #include using namespace std;typedef long long ll;const int MAXN = 50010;#ifndef __GNUC__#pragma comment(linker, "/STACK:1024
2013-09-24 18:49:47 521
原创 hdu 4691 Front compression(树连剖分)
前缀和后缀方法差不多,但是没想的tarjan在线求LCA会超时,原来还有树链剖分这个神奇的东西,学到了#include #include #include #include using namespace std;typedef long long ll;const int MAXN = 100010;char s[MAXN], cs[MAXN];#ifndef __GNUC_
2013-09-24 14:02:17 500
原创 后缀自动机合集 I
有关后缀自动机的理论和证明各路大神的博客多如牛毛,就不细说。对于每个State点,State->step - Sate->father->step 代表从任一后缀串起始走到该状态的路径数
2013-09-09 00:26:26 836
原创 hdu 1711 Number Sequence
最基础KMP模板#include #include #include #include using namespace std;const int MAXN = 1000010;const int MAXM = 10010;int lenT, lenP, next[MAXM];int strT[MAXN], strP[MAXM];void getNext(){ int i
2013-09-06 20:29:08 489
原创 hdu 2888 Check Corners
RMQ的二维应用,核心思想和一维一样#include #include #include #include using namespace std;const int MAXN = 301;const int MAXM = 301;int n, m, val[MAXN][MAXM];int dp[MAXN][MAXM][9][9];int log ( int x ){
2013-09-05 16:16:46 485
原创 hdu 4620 Fruit Ninja Extreme
暴力深搜,剪枝#include #include #include #include #include using namespace std;#define MAXN 35int n, m, w, ans, asArray[MAXN];int vis[205];struct _node{ int c, t, idx, num[15]; bool opera
2013-09-04 20:04:17 558
原创 hdu 4617 Weapon
计算几何,不过题意有点模糊,因此貌似数据也比较水#include #include #include #include using namespace std;#define MAXN 35const double eps = 1e-6;int cmpZero ( double a ){ return ( a > eps ) - ( a < -eps );}str
2013-09-03 21:42:22 576
原创 hdu 4616 Game
树dp,学了一招,以边进行dp#include #include #include using namespace std;#define MAXN 50010int trap[MAXN], gift[MAXN], n, c, ans;int dp[MAXN<<1][5], head[MAXN], cnt;struct _edge{ int u, v, next; _edg
2013-09-03 12:54:50 624
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人