hdoj 5477 A Sweet Journey 【二分】
来源:互联网 发布:sqlserver取消自增列 编辑:程序博客网 时间:2024/06/15 22:04
A Sweet Journey
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 302 Accepted Submission(s): 163
Problem Description
Master Di plans to take his girlfriend for a travel by bike. Their journey, which can be seen as a line segment of length L, is a road of swamps and flats. In the swamp, it takes A point strengths per meter for Master Di to ride; In the flats, Master Di will regain B point strengths per meter when riding. Master Di wonders:In the beginning, he needs to prepare how much minimum strengths. (Except riding all the time,Master Di has no other choice)
![](http://acm.hdu.edu.cn/data/images/C623-1010-1.jpg)
![](http://acm.hdu.edu.cn/data/images/C623-1010-1.jpg)
Input
In the first line there is an integer t (1≤t≤50 ), indicating the number of test cases.
For each test case:
The first line contains four integers, n, A, B, L.
Next n lines, each line contains two integers:Li,Ri , which represents the interval [Li,Ri] is swamp.
1≤n≤100,1≤L≤105,1≤A≤10,1≤B≤10,1≤Li<Ri≤L .
Make sure intervals are not overlapped which meansRi<Li+1 for each i (1≤i<n ).
Others are all flats except the swamps.
For each test case:
The first line contains four integers, n, A, B, L.
Next n lines, each line contains two integers:
Make sure intervals are not overlapped which means
Others are all flats except the swamps.
Output
For each text case:
Please output “Case #k: answer”(without quotes) one line, where k means the case number counting from 1, and the answer is his minimum strengths in the beginning.
Please output “Case #k: answer”(without quotes) one line, where k means the case number counting from 1, and the answer is his minimum strengths in the beginning.
Sample Input
12 2 2 51 23 4
Sample Output
Case #1: 0
题意:一个人要骑车过一个[0, L]的区间,区间里面有n个沼泽其余全是平坦的道路。第i个沼泽的区间为[l[i], r[i]],所有沼泽都不会重叠且r[i] < l[i+1]。已知骑车过沼泽每单位长度需要花费a点力气,走平路每单位长度可以收获b点力气。问你这个人至少需要准备的力气。。。
本身模拟比较弱,直接上了二分。
AC代码:
#include <cstdio>#include <cstring>#include <algorithm>#define MAXN 100000+1using namespace std;int s[MAXN], e[MAXN];int n, L, a, b;bool judge(int d){ int pre = 0; for(int i = 1; i <= n; i++) { d += (s[i] - pre) * b; d -= (e[i] - s[i]) * a; if(d < 0) return false; pre = e[i]; } return true;}int main(){ int t, k = 1; scanf("%d", &t); while(t--) { scanf("%d%d%d%d", &n, &a, &b, &L); for(int i = 1; i <= n; i++) scanf("%d%d", &s[i], &e[i]); int l = 0, r = L * 10+1, mid; int ans; while(r >= l) { int mid = (l + r) >> 1; if(judge(mid)) ans = mid, r = mid - 1; else l = mid + 1; } printf("Case #%d: %d\n", k++, ans); } return 0;}
0 0
- hdoj 5477 A Sweet Journey 【二分】
- hdoj 5477 A Sweet Journey
- hdoj 5477 A Sweet Journey (二分查找)
- A Sweet Journey 【二分】
- 【HDU】5477---A Sweet Journey(二分)
- ACM--过沼泽--模拟--HDOJ 5477--A Sweet Journey
- HDU 5477: A Sweet Journey
- hdu 5477 A Sweet Journey
- HDU 5477 A Sweet Journey
- HDU 5477 A Sweet Journey
- HDU 5477 A Sweet Journey
- HDU 5477 A Sweet Journey
- HDU 5477 A Sweet Journey
- hdu 5477 A Sweet Journey
- hdoj5477A Sweet Journey【二分】
- HDU 5477A Sweet Journey网赛
- hdu(5477)——A Sweet Journey
- hdu 5477 A Sweet Journey(水)
- eclipse快捷键汇总
- [速报酱团队]第二周,如何让我们的单细胞动物运动
- HDU 5493 Queue (树状数组+二分)2015 ICPC 合肥网赛
- 【阿里ECS】Nginx实现反向代理和负载均衡的配置及优化
- Android入门——远程Remote Service AIDL详解及应用
- hdoj 5477 A Sweet Journey 【二分】
- NOIP2009 最优贸易
- 【总结】Java基础总结⑵
- Android学习入门
- 欢迎使用CSDN-markdown编辑器
- 设计模式—六大设计原则
- 网页布局
- 12 - 模块与函数
- 13 - 字符串与正则表达式