- 博客(7)
- 收藏
- 关注
原创 【HDU】 1011 Starship Troopers
Starship Troopers题目链接Starship Troopers题目大意 给你一棵树,告诉你每个节点的代价和价值,现在你共有m个代价,要求对于子节点,你必须取得其根节点才能继续取得子节点,现在求我们能取得的最大价值。题解 这一题是典型的树形DP,只有取得根节点才能取得字节的价值,对于题目,我们定义d[i][j]为第i个节点我们共用j个人时的最大价值,于是我们很容易列出方程d[i
2016-03-29 19:06:06 291
原创 【HDU】 1003 Max Sum
Max Sum题目链接 Max Sum题目大意 给你一串数,正的负的都有,现在要你算出这一列数的最大子段和(就是选取一段连续的部分,这部分所有的数加起来的和是所有情况中最大的)。题解 这一题我首先想到的是用合并的方法,比如一串数,最大子段和只有可能有三种情况: 1.包含最左边的数。 2.包含最右边的数。 3.中间的某一段。 在这里,我采用递推的思路去分析1~i和1~i
2016-03-14 20:42:51 417
原创 【HDU】 1002 A + B Problem II
A + B Problem II题目链接 A + B Problem II题目大意 CF上的题感觉现在水题略多,干脆从第一页开始刷HDU算了…. 题目意思很简单,给两个超长的数相加。题解 就是个高精度,数据略坑,会有什么0000+000之类的东西…要把高位上的0都去掉。 果然高精度好久不写了手生啊….代码#include <iostream>#include <cstring
2016-03-14 20:26:36 306
原创 【HDU】 5536 Chip Factory
Chip Factory题目链接 Chip Factory题目大意 说有一组数,你需要从其中选取3个数a b c,使得(a+b) xor c 达到最大。题解 建立一棵字典树,每个数用2进制表示插入树中,我们先枚举a跟b,将a跟b从字典树中删除,最后在字典树中查找a+b的“反码”(因为要使最后的异或结果最大)。如果有节点就继续查找,没有节点就走另一边。代码#include <iostream
2016-03-14 17:30:28 298
原创 【HDU】 5538 House Building
House Building题目链接 House Building题目大意 就是一个用多个小方块搭成的建筑,我们需要计算他的表面积,不用算底面的面积。 题解 对每个坐标位置的方块进行处理,检查他有几个面是暴露在外面的,这样我们可以得出每个坐标位置的方块的表面积,最后加起来就可以了。 代码 比较易懂的代码#include <iostream>#incl
2016-03-14 17:12:58 390
原创 【HDU】 5532 Almost Sorted Array
Almost Sorted Array 链接 HDU 题目链接题解 这题主要的思想就是运用前缀和后缀数组,判断删去一个之后剩余的部分是否是有序的,如果 代码#include <iostream>#include <cstdio>#include <cstring>using namespace std;int T,n,a[100005],pre1[100005],sim
2016-03-14 16:55:14 418
原创 Codeforces Round #277 (Div. 2) A·B·C
A. Calculating Functiontime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputFor a positive integer n let's defin
2016-03-07 17:33:16 541
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人