HDU 6024 Building Shops(DP)
来源:互联网 发布:威纶触摸屏数据导出 编辑:程序博客网 时间:2024/06/05 20:56
Building Shops
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Total Submission(s): 889 Accepted Submission(s): 343
Problem Description
HDU’s n classrooms are on a line ,which can be considered as a number line. Each classroom has a coordinate. Now Little Q wants to build several candy shops in these n classrooms.
The total cost consists of two parts. Building a candy shop at classroomi would have some cost ci . For every classroom P without any candy shop, then the distance between P and the rightmost classroom with a candy shop on P 's left side would be included in the cost too. Obviously, if there is a classroom without any candy shop, there must be a candy shop on its left side.
Now Little Q wants to know how to build the candy shops with the minimal cost. Please write a program to help him.
The total cost consists of two parts. Building a candy shop at classroom
Now Little Q wants to know how to build the candy shops with the minimal cost. Please write a program to help him.
Input
The input contains several test cases, no more than 10 test cases.
In each test case, the first line contains an integern(1≤n≤3000) , denoting the number of the classrooms.
In the followingn lines, each line contains two integers xi,ci(−109≤xi,ci≤109) , denoting the coordinate of the i -th classroom and the cost of building a candy shop in it.
There are no two classrooms having same coordinate.
In each test case, the first line contains an integer
In the following
There are no two classrooms having same coordinate.
Output
For each test case, print a single line containing an integer, denoting the minimal cost.
Sample Input
31 22 33 441 73 15 106 1
Sample Output
511
Source
2017中国大学生程序设计竞赛 - 女生专场
#include<iostream>#include<algorithm>#include<cmath>#include<cstdio>#include<cstdlib>#include<queue>#include<map>#include<set>#include<stack>#include<bitset>#include<numeric>#include<vector>#include<string>#include<iterator>#include<cstring>#include<ctime>#include<functional>#define INF 0x3f3f3f3f#define ms(a,b) memset(a,b,sizeof(a))#define pi 3.14159265358979#define MOD 1000000007#define lson l,m,rt<<1#define rson m+1,r,rt<<1|1using namespace std;typedef pair<int, int> P;typedef long long ll;typedef unsigned long long ull;const int maxn = 3010;struct Node {ll x, c;}a[maxn];ll dp[maxn][maxn];bool cmp(Node a, Node b){return a.x < b.x;}int main(){int n;while (~scanf("%d", &n)){for (int i = 1; i <= n; i++){scanf("%lld%lld", &a[i].x, &a[i].c);}sort(a + 1, a + 1 + n, cmp);ms(dp, INF);dp[1][1] = a[1].c;for (int i = 2; i <= n; i++){for (int j = 1; j < i; j++){dp[i][i] = min(dp[i][i], dp[i - 1][j] + a[i].c);dp[i][j] = min(dp[i][j], dp[i - 1][j] + (a[i].x - a[j].x));}}ll ans = INF;for (int i = 1; i <= n; i++){ans = min(ans, dp[n][i]);}printf("%lld\n", ans);}}
阅读全文
0 0
- hdu 6024 Building Shops (DP)
- HDU 6024 Building Shops (DP)
- HDU 6024 Building Shops(DP)
- HDU 6024 Building Shops (简单dp)
- HDU 6024 Building Shops[dp]
- hdu 6024 Building Shops (dp)
- HDU 6024 Building Shops【DP】
- HDU 6024 Building Shops(DP)
- HDU 6024 Building Shops(DP)
- hdu 6024 Building Shops dp
- HDU 6024 Building Shops DP 提升
- HDU 6024 Building Shops
- HDU—6024(Building Shops)
- HDU6024 Building Shops(DP)
- (HDU 6024 女生专场)Building Shops 简单DP详细解答
- 递推-hdu-6024-Building Shops
- hdu 6024 Building Shops 【递归+记忆存储】
- Building Shops HDU
- Quartz任务调度(4)JobListener分版本超详细解析
- 消息队列应用场景
- 排序
- Hibernate专题6——注解配置
- TCP服务器的单进程实现
- HDU 6024 Building Shops(DP)
- Linux-环境变量与文件查找
- [BZOJ4917][Lydsy六月份月赛 .A][模拟]Hash Killer IV
- Ubuntu安装jdk7或者jdk8
- 欢迎使用CSDN-markdown编辑器
- Linux shell 经验手册__001__常识
- PAT乙级真题及训练集(15)--1027. 打印沙漏(20)
- 前端学习网站
- C++类和对象