// [解题方法]
// dp[i][j]表示到达第i个加油站剩余油量为j时的最小花费
// 特殊地,dp[n][j]表示到达终点剩余油量为j时的最小花费
// 状态转移:(设w[i]为每个加油站的位置,p[i]为油单价)
// 行驶:dp[i][j-(w[i]-w[i-1])] = dp[i-1][j](0<i<=n)
// 加油:dp[i][j] = dp[i][j-1]+p[i](0<i<n)因为n是特意增加的终点,不是加油站
#include <iostream>
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <algorithm>
using namespace std;
#define LL long long
#define N 105
#define M 205
#define inf 0x3fffffff
int dp[N][M], w[M], p[M];
int main()
{
char s[105];
int t, n, i, j, l, m = 200;
cin >> t;
getchar();
while (t--)
{
cin >> l;
getchar();
n = 1;
w[0] = 0;
while (gets(s))
{
if (s[0] == 0) break;
sscanf (s, "%d%d", w+n, p+n);
++n;
}
w[n] = l;
for (i = 0; i <= n; i++)
for (j = 0; j <= m; j++)
dp[i][j] = inf;
dp[0][100] = 0;
for (i = 1; i <= n; i++)
{
for (j = w[i]-w[i-1]; j <= m; j++)
dp[i][j-(w[i]-w[i-1])] = dp[i-1][j];
if (i < n) for (j = 1; j <= m; j++)
dp[i][j] = min(dp[i][j], dp[i][j-1]+p[i]);
}
int mins = dp[n][100];
for (j = 101; j <= m; j++)
if (mins > dp[n][j])
mins = dp[n][j];
if (mins == inf) puts ("Impossible");
else cout << mins << endl;
if (t) puts ("");
}
return 0;
}
分享到:
相关推荐
adventures-in-ml-code, 这个存储库保存了站点http的所有代码 adventures-in-ml-code这个存储库保存了站点 http://www.adventuresinmachinelearning.com的所有代码。这是 neural_network_tutorial.py 开发的代码,它
Borgaonkar-New-Adventures-In-Spying-3G-And-4G-Users-Locate-Track-And-Monitor
《藏经阁-Adventures-In-Attacking-Wind-Farm-Control-Networks.pdf》这篇文档探讨的主题聚焦在风力发电场控制网络的安全性上,由杰森·斯塔格斯博士,一位专注于控制系统和网络安全的研究员所撰写。他在文中提到了...
在信息技术领域,随着移动通信技术的不断进步,3G和4G网络用户的安全问题受到了广泛关注。Borgaonkar等研究者在他们的作品中详细探讨了针对3G和4G用户的隐私攻击手段,特别是如何定位、追踪和监控用户。...
《藏经阁-The-Adventures-Of-Av-And-The-Leaky-Sandbox.pdf》这份文档探讨了安全领域的一个重要话题:云杀毒软件(AV)如何可能削弱企业端点的安全性。文章由Itzik Kotler和Amit Klein两位安全研究专家撰写,他们...
在“Adventures-in-Phandalin-main”这个文件夹中,我们可以预期包含以下组件: 1. HTML文件:这些文件是游戏的基础,包含了游戏的页面结构和交互逻辑。开发者可能会使用多个HTML页面来构建不同的游戏场景或对话...
"New-Adventures-in-Canvas"这个项目可能包含了各种Canvas技术的实例,包括动画、游戏、数据可视化等,通过学习和实践这些示例,你可以深入了解Canvas API的用法,并提升自己的JavaScript图形编程能力。 总的来说...
九上牛津版 Unit 7 The Adventures of Tom Sawyer 同步练习及答案 本资源是《九上牛津版》英语教材Unit 7-The Adventures of Tom Sawyer的同步练习及答案,旨在帮助九年级学生巩固英语基础知识和提高语言能力。该...
在构建"Adventures-Travels-"这样的网站时,开发者可能会使用框架,如Bootstrap或Foundation,它们提供了预设的样式和组件,可以快速构建响应式布局,确保网站在不同设备上都能良好显示。同时,SEO优化也是关键,...
在“Adventures-In-ProgramLando:https”这个项目中,我们似乎探索了一个与编程相关的博客仓库。这个仓库可能是作者分享个人学习经历、技术文章或者教程的地方,以HTTPS为主要内容,暗示着网络安全和Web开发的议题。...
本项目"Adventures-Of-Hunter-Game"显然是一个利用 JavaScript 编程语言和 MatterJS 库创建的互动游戏。MatterJS 是一个开源的物理引擎,专为构建2D游戏和交互式应用而设计,它提供了丰富的物理模拟功能,如碰撞检测...
Sidney的经典教材Adventures in Stochastic Processes,适合有很强数学或概率基础的人学习
Vim历险记 一个专门致力于真正编辑的网站: 。 执照
TextBook : Adventures Stochastic Processes by Resnick
《Extreme Programming Adventures in C#》一书由Ron Jeffries撰写,是C#设计模式领域的一部佳作,对于深入理解极限编程(Extreme Programming,简称XP)具有重要价值。该书通过一系列的故事和实践,展示了如何在...
《Adventures in Minecraft》是一本由Martin O'Hanlon和David Whale共同撰写的书籍,首次出版于2015年,由John Wiley and Sons出版社发行。本书旨在帮助读者通过实践性的项目探索和学习Minecraft中的编程和技术应用...
本项目“Adventures-Tours-and-Vacations”显然关注的是构建一个专注于冒险旅行的网站,旨在吸引那些寻求刺激、热爱探索的旅行者。这个项目可能涉及的内容广泛,包括界面设计、用户体验(UX)、响应式布局、以及与...