hdu 4563
hdu 4563
- 把每个命令走的距离抽象成完全背包
- 枚举最后一个不是整点走完的命令
#include <iostream>
#include <algorithm>
#include <cstring>
#include <cstdio>
#include <string>
#include <set>
#include <queue>
using namespace std;
typedef long long LL;
const double N = -1e9;
double DP[105];
int xx[105],yy[105];
double cal(double t,int v)
{
return -9.8*t*t/2.0+v*t;
}
double check(int x,int n,int L)
{
for(int i = 0; i <= 100; i++)
DP[i] = N;
DP[0] = 0;
for(int i = 0; i < n; i++) //选第几个命令
{
if(i == x) continue;
for(int j = L; j >= 0; j--) //到距离j
{
for(int k = 0; k <= L/xx[i]; k++) //命令i走k秒
{
if(j >= k*xx[i])
{
DP[j] = max(DP[j],DP[j-k*xx[i]]+cal(k,yy[i]));
}
}
}
}
double ans = N;
for(int i = 0; i <= L; i++)
{
ans = max(ans,DP[i]+cal(1.0*(L-i)/xx[x],yy[x])); //枚举最后一个命令是从哪个
}
return ans;
}
void solve(int cnt)
{
int nn,L;
scanf("%d %d",&nn,&L);
for(int i = 0; i < nn; i++)
{
scanf("%d %d",&xx[i],&yy[i]);
}
double ans = N;
for(int i = 0; i < nn; i++)
{
ans = max(ans,check(i,nn,L)); //枚举最后一个命令是哪个,因为只有最后一个命令不是整点到达
}
printf("Case %d: %.3f\n",cnt,ans);
}
int main(void)
{
int t,cnt = 1;
scanf("%d",&t);
while(t--)
solve(cnt++);
return 0;
}
hdu 4563的更多相关文章
- HDOJ 2111. Saving HDU 贪心 结构体排序
Saving HDU Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total ...
- 【HDU 3037】Saving Beans Lucas定理模板
http://acm.hdu.edu.cn/showproblem.php?pid=3037 Lucas定理模板. 现在才写,noip滚粗前兆QAQ #include<cstdio> #i ...
- hdu 4859 海岸线 Bestcoder Round 1
http://acm.hdu.edu.cn/showproblem.php?pid=4859 题目大意: 在一个矩形周围都是海,这个矩形中有陆地,深海和浅海.浅海是可以填成陆地的. 求最多有多少条方格 ...
- HDU 4569 Special equations(取模)
Special equations Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u S ...
- HDU 4006The kth great number(K大数 +小顶堆)
The kth great number Time Limit:1000MS Memory Limit:65768KB 64bit IO Format:%I64d & %I64 ...
- HDU 1796How many integers can you find(容斥原理)
How many integers can you find Time Limit:5000MS Memory Limit:32768KB 64bit IO Format:%I64d ...
- hdu 4481 Time travel(高斯求期望)(转)
(转)http://blog.csdn.net/u013081425/article/details/39240021 http://acm.hdu.edu.cn/showproblem.php?pi ...
- HDU 3791二叉搜索树解题(解题报告)
1.题目地址: http://acm.hdu.edu.cn/showproblem.php?pid=3791 2.参考解题 http://blog.csdn.net/u013447865/articl ...
- hdu 4329
problem:http://acm.hdu.edu.cn/showproblem.php?pid=4329 题意:模拟 a. p(r)= R'/i rel(r)=(1||0) R ...
随机推荐
- Java学习之JVM、JRE、JDK联系与区别
JVM,全称是Java Virtual Machine,翻译为Java虚拟机: JRE,全称是Java Runtime Environment,翻译为Java运行时环境: JDK,全称是Java De ...
- POJ 2763 /// 基于边权的树链剖分
题目大意: 给定n个结点,有n-1条无向边,给定每条边的边权 两种操作,第一种:求任意两点之间路径的权值和,第二种:修改树上一点的权值. 因为是一棵树,可以直接把 u点和v点间(假设u为父节点,v为子 ...
- Android笔记之ExpandableListView(悬浮吸顶Demo)
参考链接 ExpandableListView中item的定位问题 - RELY_ON_YOURSELF的博客 - CSDN博客(感觉写得很好,讲到了组位置.子位置及原始位置之间的转换) how to ...
- java获得磁盘、网络实时I/O速率
最近项目中需要一个平台硬件资源的监控模块,当时采用了Sigar中api,但是做到针对磁盘和网络的实时I/O速率的时候发现Sigar并没有直接支持的接口.于是……它就诞生了.底层采用C++编写,通过ja ...
- 【FHQ-Treap】P4146 序列终结者
题意: 给定一个序列,支持区间加,区间反转,区间max询问 裸的平衡树题,这里采用FHQ-Treap 每个节点多记录一个max值和两个lazy_tag,暴力Push_Down即可(大常数选手) 打完这 ...
- Windows系统查看xxx.dll、xxx.lib文件的导出函数、依赖文件等信息的方法
1.查看xxx.dll或xxx.exe文件的导出函数.依赖文件等信息,使用Depends软件即可. 2.查看xxx.lib文件的导出函数.依赖文件等信息,使用Visual Studio附带工具dump ...
- leetcode-157周赛-5214-最长定差子序列
题目描述: class Solution: def longestSubsequence(self, arr: List[int], difference: int) -> int: dp = ...
- python3和python2编码拾遗
py2编码 tr和unicode str和unicode都是basestring的子类.严格意义上说,str其实是字节串,它是unicode经过编码后的字节组成的序列.对UTF-8编码的str'苑'使 ...
- bsgs+求数列通项——bzoj3122(进阶指南模板该进)
/* 已知递推数列 F[i]=a*F[i-1]+b (%c) 解方程F[x]=t an+1 = b*an + c an+1 + c/(b-1) = b(an + c/(b-1)) an+1 + c/( ...
- LUOGU P2564 [SCOI2009]生日礼物 (队列+模拟)
传送门 解题思路 还是比较好想的,用一个队列,然后把所有点放在一起排个序,依次入队.每次检查队头元素的种类是否为当前入队元素种类,是的话就一直\(pop\),每次更新答案即可. 代码 #include ...