题意:带权树上有起点终点每个点上有宝藏,一个人只有T分钟要从起点到重点,问你最多能收集多少宝藏。思路:树形dp,首先判断能不能走到终点,然后把路径上的边权变为0时间减去所有边权。dp[v][j]表示从v出发回到v话费j分钟最多能收集到的宝藏。dp[v][j]
= max(dp[v][j], dp[x...
分类:
其他好文 时间:
2014-05-10 01:47:33
阅读次数:
324
1、有哪些数据类型?2、数据类型在不同的编译器会有不同的位宽,如何得知?使用如下命令:cout
//该头文件必须加上。。。 cout::max()::min()::max()::max()::max()::min()<<endl;
分类:
编程语言 时间:
2014-05-10 01:39:39
阅读次数:
419
大概作了一周,终于A了类似于求最长公共子序列,稍有变形当前序列 ch1 中字符为 a,序列 ch2
中字符为 b则有 3 种配对方式:1. a 与 b2. a 与 -3. - 与 b动态转移方程:dp[i][j] = max(dp[i - 1][j - 1]
+ g(ch1[i],ch2[j]) ,...
分类:
其他好文 时间:
2014-05-09 17:57:55
阅读次数:
255
题意:求最长子序列#include#includeusing namespace std;int
max(int x,int y){ if(x>y) return x; return y;}int map[1001][1001];char
s1[1001],s2[1001];int main(){ ...
分类:
其他好文 时间:
2014-05-07 20:07:29
阅读次数:
202
OJ题目:click here~~
题目分析:四塔问题,n个盘,从塔1,到塔4,至少需要多少步。
这里n的范围是( 0 , 50000 ] ,所以不能直接用四塔算法。这里找规律就可以了。
AC_CODE
const int mod = 10000;
const int Max_N = 50002;
int dp[Max_N];
int main()
{
int i , j = ...
分类:
其他好文 时间:
2014-05-07 08:18:09
阅读次数:
226
题目链接:1543 - Telescope
题意:按顺序给定圆周上一些点,问用选一些点组成m边形面积的最大值。
思路:dp,dp[i][j][k] 表示第一个点为i,最后一个点为j,当前选择k的最大值,因为多选一个点,会多的面积为他和第一个点和最后一个点构成的三角形面积,然后利用海伦公式求面积,状态转移为:dp[i][j][x] = max(dp[i][j][x], dp[i - 1][j][...
分类:
其他好文 时间:
2014-05-07 07:57:49
阅读次数:
301
今天一个女生咨询我报名学优化。聊着聊着就让我优化一个sql,贴给大家看一下
select (case
when grouping(allwo.workshop_code) = 1 then
''
else
nvl(max(allwo.workshop_code), '未维护车间')
end) worksho...
分类:
其他好文 时间:
2014-05-07 06:45:47
阅读次数:
398
此为C语言的基础,和Linux内核关系并不大,不过还是作为补充知识点介绍一下好了。宏非常频繁的用于执行简单的计算,比如在两个表达式中寻找其中较大的一个:
#define MAX(a,b) ((a)>(b)?(a):(b))
如果使用函数来实现的话就比较慢,宏的话在编译的时候就完成工作,所以使用宏远比使用函数调用效率来的可观。和使用函数相比,使用宏的不利之处就在于每次使用宏的时候,一个宏定义代码...
分类:
其他好文 时间:
2014-05-07 04:59:27
阅读次数:
270
1题目:给定K个整数的序列{ N1, N2, ..., NK },其任意连续子序列可表示为{
Ni, Ni+1, ..., Nj },其中 1 int main(){ int n, a[10001], left, beforeleft, right,
i, max, sum; while...
分类:
其他好文 时间:
2014-05-06 13:18:27
阅读次数:
366
try{ INIT_PLUG I_MongoDB* i = NEW(MongoDB);
/*【注】 若自定义错误消息的数组长度必需指定为MAX_ERROR_SIZE*/ //char errmsg[MAX_ERROR_SIZE]={0};//方式一
...