【HDOJ】1474 Always On the Run
普通DP。基本和floyd一个思路。
/* 1474 */
#include <cstdio>
#include <cstring>
#include <cstdlib> #define MAXN 15
#define MAXK 1005
#define MAXD 35
#define INF 999999 int dp[MAXN][MAXK];
int day[MAXN][MAXD];
int price[MAXN][MAXN][MAXD]; int min(int a, int b) {
return a<b ? a:b;
} int main() {
int i, j, k, p;
int n, m, d;
int t = ; #ifndef ONLINE_JUDGE
freopen("data.in", "r", stdin);
#endif while (scanf("%d %d", &n, &m)!=EOF && (n||m)) {
for (i=; i<=n; ++i) {
for (j=; j<=n; ++j) {
if (i == j)
continue;
scanf("%d", &day[i][j]);
for (k=; k<=day[i][j]; ++k)
scanf("%d", &price[i][j][k]);
}
} for (i=; i<=n; ++i)
for (j=; j<=m; ++j)
dp[i][j] = INF; dp[][] = ;
for (k=; k<=m; ++k) {
for (i=; i<=n; ++i) {
for (j=; j<=n; ++j) {
if (i == j)
continue;
d = (k-)%day[j][i] + ;
if (price[j][i][d] && dp[j][k-]!=INF)
dp[i][k] = min(dp[i][k], dp[j][k-]+price[j][i][d]);
}
}
} printf("Scenario #%d\n", ++t);
if (dp[n][m] == INF)
printf("No flight possible.\n\n");
else
printf("The best flight costs %d.\n\n", dp[n][m]);
} return ;
}
【HDOJ】1474 Always On the Run的更多相关文章
- 【转】adb.exe,start-server' failed -- run manually if necessary
[转]Android adb.exe程序启动不起来,如何处理 解决问题: 百度google大家多说的是任务管理器 kill掉adb 或者重启adb server,但我任务管理器就没有adb ,猜测是某 ...
- 【HDOJ】1109 Run Away
基础模拟退火. /* poj 1379 */ #include <iostream> #include <cstdio> #include <cstdlib> #i ...
- 【HDOJ】4729 An Easy Problem for Elfness
其实是求树上的路径间的数据第K大的题目.果断主席树 + LCA.初始流量是这条路径上的最小值.若a<=b,显然直接为s->t建立pipe可以使流量最优:否则,对[0, 10**4]二分得到 ...
- 【HDOJ】【3506】Monkey Party
DP/四边形不等式 裸题环形石子合并…… 拆环为链即可 //HDOJ 3506 #include<cmath> #include<vector> #include<cst ...
- 【HDOJ】【3516】Tree Construction
DP/四边形不等式 这题跟石子合并有点像…… dp[i][j]为将第 i 个点开始的 j 个点合并的最小代价. 易知有 dp[i][j]=min{dp[i][j] , dp[i][k-i+1]+dp[ ...
- 【HDOJ】【3480】Division
DP/四边形不等式 要求将一个可重集S分成M个子集,求子集的极差的平方和最小是多少…… 首先我们先将这N个数排序,容易想到每个自己都对应着这个有序数组中的一段……而不会是互相穿插着= =因为交换一下明 ...
- 【HDOJ】【2829】Lawrence
DP/四边形不等式 做过POJ 1739 邮局那道题后就很容易写出动规方程: dp[i][j]=min{dp[i-1][k]+w[k+1][j]}(表示前 j 个点分成 i 块的最小代价) $w(l, ...
- 【HDOJ】【3415】Max Sum of Max-K-sub-sequence
DP/单调队列优化 呃……环形链求最大k子段和. 首先拆环为链求前缀和…… 然后单调队列吧<_<,裸题没啥好说的…… WA:为毛手写队列就会挂,必须用STL的deque?(写挂自己弱……s ...
- 【HDOJ】【3530】Subsequence
DP/单调队列优化 题解:http://www.cnblogs.com/yymore/archive/2011/06/22/2087553.html 引用: 首先我们要明确几件事情 1.假设我们现在知 ...
随机推荐
- memcache实现公共计数器网站
在反问题的过程中遇到的最近项目.网上查了很多资料并没有完全实现. 因此,要找到适合自己的xmemcache client和memcache关联API和说明,我们发现了一个比较完美的实现. 键类:net ...
- XTU OJ 1210 Happy Number (暴力+打表)
Problem Description Recently, Mr. Xie learn the concept of happy number. A happy number is a number ...
- 中国剩余定理模板poj1006
#include <cstdio> #include <iostream> #include <cstring> #include <cmath> #i ...
- js正则表达式验证大全
/判断输入内容是否为空 function IsNull(){ var str = document.getElementById('str').value.trim(); ...
- easydialog.js
/** * easyDialog v2.2 * Url : http://stylechen.com/easydialog-v2.0.html * Author : chenmnkken@gmail. ...
- <c:if>判断参数是否同时为空
<c:if test="${empty str}"> str为空</c:if> <c:if test="${not empty str}& ...
- lucene建立索引的过程
建立索引过程 用户提交数据=>solr建立索引=>调用lucene包建立索引 官方建立索引和查询索引的例子如下: http://lucene.apache.org/core/4_10_3/ ...
- SQL Server主键自动生成_表and存储过程
主键表: CREATE TABLE [dbo].[KEYCODE]( [KeyName] [varchar](12) NOT NULL, [KeyTableName] [varchar](40) NU ...
- Android Studio使用教程图文详解
谷歌表示Android Studio 1.0 能让开发者“更快更有生产力”,并认为它可以代替 Eclipse,同时为Eclipse 用户提供迁移步骤.代码自动提示.运行响应速度.都比Eclipse来的 ...
- RSA PKCS1padding 填充模式
在BouncyCastle实现RSA的PKCS1V1.5模式中,如果是公钥加密信息(forEncryption=true),密钥长度为1024位,那么输出的密文块长度为128个字节,输入的明文块长度为 ...