写题解之前首先要感谢妹子。
比较容易的斜率DP,设sum[i]=Σb[j],sum_[i]=Σb[j]*j,w[i]为第i个建立,前i个的代价。 那么就可以转移了。
备注:还是要感谢妹子。/**************************************************...
分类:
其他好文 时间:
2014-05-08 10:24:20
阅读次数:
260
最近除了写论文也没太多事情,可是时间却被完全打乱了。想了想还是要在毕业前做点有意义的事情吧。明天把论文的最后一点东西写完就发给老板。剩下的时间做点事情,列举一下:旅游(成都or长沙张家界)看完levelDB的源码,写一篇学习日志用wordpress做一个网站在自己的机器上先跑一下实现本地访问和局域网...
分类:
其他好文 时间:
2014-05-08 07:25:57
阅读次数:
336
OJ题目:click here~~
树上的01背包
const int maxn = 102;
int val[maxn];
int w[maxn];
vector g[maxn];
int dp[maxn][maxn];
int n , m ;
void dfs(int u , int father){
int v , i , j , k;
for(i = w[u];i...
分类:
其他好文 时间:
2014-05-08 05:09:28
阅读次数:
323
Problem Description
有一棵 n 个节点的树,树上每个节点都有一个正整数权值。如果一个点被选择了,那么在树上和它相邻的点都不能被选择。求选出的点的权值和最大是多少?
Input
第一行包含一个整数 n 。
接下来的一行包含 n 个正整数,第 i 个正整数代表点 i 的权值。
接下来一共 n-1 行,每行描述树上的一条边。
Out...
分类:
其他好文 时间:
2014-05-08 04:55:03
阅读次数:
282
题目链接:uva 1543 - Telescope
题目大意:...
分类:
其他好文 时间:
2014-05-08 04:28:25
阅读次数:
364
很简单的一道DP,看到空间限制是O(N)的,不要习惯性的以为是要保存每一行的最小值,不难想到是要保存一行当中各个数为路径终点时的和的大小。当算到最后一行时,就是从顶部到底部以这个底部位置为终点的最短路径和,找一个最小的就可以了。
实现的时候要注意个问题,因为计算时要用到上一行的数据,所以为了避免数据被覆盖,应该从后往前算,这个技巧用的很多,相信大家都很熟悉。
ac代码如下:
class So...
分类:
其他好文 时间:
2014-05-08 04:01:44
阅读次数:
282
两种解法。
我想到的是最大的矩形,中间一定有个最矮的某个单位矩形,所以用两个数组记录任何一个单位矩形histogram[i]左右两边第一个比它小的单位矩形的序号,这里找的时候用DP加速。
#include
using namespace std;
//the histogram stored from left to right
long histogram[100001]...
分类:
其他好文 时间:
2014-05-08 01:59:37
阅读次数:
443
class Solution {private: vector result;public:
vector wordBreak(string s, unordered_set &dict) { vector > dp;
result.clear(); ...
分类:
其他好文 时间:
2014-05-08 01:00:03
阅读次数:
361
题目链接:点击打开链接
题意:
切水果游戏
给出n个水果
水果出现在屏幕上的时间的区间
1、每次切会把屏幕上所有水果切完
2、当同时切3个或以上时计分,分数为切的水果个数
3、不能遗漏水果
问最高得分
dp[i] 表示 最后一次切第i个的得分。
#include
#include
#include
#include
using namespace std;
#define N ...
分类:
其他好文 时间:
2014-05-07 23:36:52
阅读次数:
346
The Number of set
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 1056 Accepted Submission(s): 655
Problem Description
Given you n s...
分类:
其他好文 时间:
2014-05-07 21:35:32
阅读次数:
381