OJ题目 : click here~
题目分析:X为距离 , 当0C1。 L1C2。L2
设dp[ i ] 为到车站 i 的最少票价 。
则转移方程为dp[ i ] = min(dp[ j ] + 从j 到 i 的票价),j 为所有可以直接到 i 的车站。
要注意第一个数字 大于 第二个数字的情况。的确,题目没有说,从a 到 b。只说了a,b之间。要仔细读题啊,不能想当然。
AC_COD...
分类:
其他好文 时间:
2014-07-22 23:05:52
阅读次数:
294
日期与时间
struct tm {
int tm_sec; /* 秒 – 取值区间为[0,59] */
int tm_min; /* 分 - 取值区间为[0,59] */
int tm_hour; /* 时 - 取值区间为[0,23] */
int tm_mday; /* 一个月中的日期...
分类:
其他好文 时间:
2014-07-22 23:03:55
阅读次数:
279
题意:在一个公司中要举办一个聚会,每一个员工有一个奉献值。为了和谐规定直接上下级不能一起出席。让你找出奉献值之和最大为多少。思路:dp[v][1]表示当前结点选,能获得的最大奉献值,dp[v][0]表示当前节点不选能获得的最大奉献值。状态转移:dp[v][0]
= max(dp[v][0], ∑ma...
分类:
其他好文 时间:
2014-05-01 22:30:47
阅读次数:
485
Linux下Rsync+inotify-tools实现数据实时同步中有一个重要的配置就是设置Inotify的max_user_watches值,如果不设置,当遇到大量文件的时候就会出现出错的情况。一般网上修改方法就是直接修改文件:/proc/sys/fs/inotify/max_user_watch...
分类:
系统相关 时间:
2014-05-01 21:22:57
阅读次数:
715
Gabor的核函数参考的wiki使用实数Real的公式计算核函数代码:Mat gaborFilter(Mat& img, Mat& filter){
int half_filter_size = (max(filter.rows,filter.cols)-1)/2;
Mat filtered_img(img.rows,img.cols,CV_32F);
for(int i=0;i<img.r...
分类:
其他好文 时间:
2014-05-01 17:42:41
阅读次数:
378
链接:http://acm.hdu.edu.cn/showproblem.php?pid=3415
题意:给出一个数环,要找出其中9长度小于等于K的和最大的子段。
思路:不能采用最暴力的枚举,题目的数据量是10^5,O(N^2)的枚举回去超时,本题采用的很巧妙的DP做法,是用单调队列优化的DP。
运用的是STL的deque,从i:1~a找到以其中以i为尾的符合条件的子段,并将i本身放入双向队...
分类:
其他好文 时间:
2014-05-01 08:32:53
阅读次数:
324
我采用Database First,用Sql很容易就可以做到对一个表进行压缩。如以下:
CREATE TABLE [dbo].[Entities](
[Id] [int] IDENTITY(1,1) NOT NULL,
[Name] [nvarchar](max) NULL,
Primary Key Clustered ([Id] ASC) WITH (DATA_...
分类:
数据库 时间:
2014-04-30 22:23:39
阅读次数:
436
Max Sum
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 135262 Accepted Submission(s): 31311
Problem Description
Given a sequen...
分类:
其他好文 时间:
2014-04-30 22:21:40
阅读次数:
280
很好的一道动态规划法题目。
注意:
1 行列别搞错了,要很细心一点一点对起来
2 要以边线思考,不要以方块来计算, N*M个方块就成了(N+1)*(M+1)条交叉线了,最下面和最左边的线就方便初始化了
3 注意C++的四舍五入的方法
动态规划的状态转移方程:
if (A[y][x]) B[x] = t + 1.414213562;
else B[x] = min(B[x-1], B[x]) + 1 ;
A[y][x]表示是否有对角线,有对角线必定是走对角线的。...
分类:
其他好文 时间:
2014-04-30 22:21:38
阅读次数:
369
大数乘法的步骤(先戳我看看大数加法的思想):
首先是输入2个数据,并且逆序,还要去掉前导0。比较大小:
相等的话,结果为0。前者大于后者,则直接进行减法运算。前者小于后者,则用后者减去前者,最后在结果前面添上负号。
从最高位开始输出结果。
#include
#include
#define MAX 1000
using namespace std;
void InputNu...
分类:
其他好文 时间:
2014-04-30 22:17:40
阅读次数:
231