- 博客(5)
- 收藏
- 关注
原创 poj2817状态压缩DP
//输出最大的与前一个字符相同的个数之和 //184K 0MS //主要要理解是状态压缩DP,状态是是否选择了该字符 //并且保存状态时候因为字符之间有顺序,所有需要保存最后一个字符 #include #include #include using namespace std; #define MAXN 12 static int N; static char words[MAXN]
2015-09-26 10:10:13 346
原创 poj1797最大生成树
//1348K 454MS //注意不是生成整棵树而是只要可以到达N点就行了 #include #include #include #include using namespace std; #define MAXE 1000005 #define MAXN 1006 static struct edge { int from; int to; int cost; }
2015-09-18 20:31:11 418
原创 poj1837 01背包类型计数
//有一个天平,天平左右两边各有若干个钩子,总共有C个钩子,有G个钩码,求将钩码全部挂到钩子上使天平平衡的方法的总数。 // 其中可以把天枰看做一个以x轴0点作为平衡点的横轴 //因为强制用所有的砝码那么与用于不用对应两种状态 //1424K 0MS #include #include #include using namespace std; #define MAXN 22 #def
2015-09-17 11:42:49 367
原创 Hoj1161树状数组统计
可以根据是否被攻击过设置当前结点一直到下一次可用的时候的时间 #include #include #include using namespace std; #define SIZE 100050 static int C[SIZE]; static int n,q,t; static int bAttack[SIZE];//可攻击时间 static int lowbit(int
2015-09-15 21:56:48 395
原创 poj3274数位HASH
//题意:求解最大的连续区间使得该区间中每种特征出现的次数是相等的 //可以用树状数组类似方法求解sum[i][]表示0-i所有属性出现的次数 //那么就是求sum[j][] - sum[i][]最大的j-i的值 //sum[j][k]-sum[i][k] = sum[j][0]- sum[i][0] sum[j][k] - sum[j][0] = sun[i][k] - sum[i][0]
2015-09-11 20:53:56 340
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人