ACdream1092
题意是给出某个地鼠的出现位置以及出现时间,人有一个移动速度,求此人最多可以打多少个地鼠?
我们根据时间把所有的地鼠排序,如果两个地鼠之间的距离不超过时间只差与速度的乘积,那说明打完上一只地鼠还可以打到这一只地鼠。
直接f[i]表示打完第i只地鼠且此时在i地鼠位置的期望,DP即可。
召唤代码君:
/*
* this code is made by 092000
* Problem: 1092
* Verdict: Accepted
* Submission Date: 2014-07-19 23:27:11
* Time: 276MS
* Memory: 1732KB
*/
#include <iostream>
#include <cstdio>
#include <cstring>
#include <cmath>
#include <algorithm>
#define maxn 1010
using namespace std; struct mouse{
double x,y,t,p;
}m[maxn]; bool cmp(mouse m1,mouse m2)
{
return m1.t<m2.t;
} int T,n,v;
double ans,sum[maxn]; double dis(int i,int j)
{
return sqrt((m[i].x-m[j].x)*(m[i].x-m[j].x)+(m[i].y-m[j].y)*(m[i].y-m[j].y));
} int main()
{
sum[]=m[].x=m[].y=m[].t=;
scanf("%d",&T);
while (T--)
{
ans=;
scanf("%d%d",&n,&v);
for (int i=; i<=n; i++)
scanf("%lf%lf%lf%lf",&m[i].x,&m[i].y,&m[i].t,&m[i].p),sum[i]=;
sort(m+,m++n,cmp);
for (int i=; i<=n; i++)
{
for (int j=; j<i; j++)
if (dis(i,j)<=(m[i].t-m[j].t)*v) sum[i]=max(sum[i],sum[j]);
ans=max(ans,sum[i]=sum[i]+m[i].p);
}
printf("%.6f\n",ans);
}
return ;
}
ACdream1092的更多相关文章
随机推荐
- UWP 剪贴板 Clipboard
Clipboard使用Windows.ApplicationModel.DataTransfer.Clipboard 设置文本 DataPackage dataPackage = new DataPa ...
- Makefile详解
原文链接:https://blog.csdn.net/qq_38646470/article/details/79917494 专栏链接:https://blog.csdn.net/column/de ...
- EasyUI系列学习笔记(一)——注册
前面介绍过EasyUI是一个前段框架,开发之前需要导入底层包:我这里采用的是EasyUI 1.4版本~ 今天主要是搭建一个EasyUI的环境,同时做一个登陆页面... 环境搭建 导入需要的文件到项目中 ...
- 关于IPointerEnterHandler和IpointerExitHandler的简单说明
自己在学习UGUI背包系统时用到了,而且遇到一些问题,所以在这里写一下这两个接口的简单说明. 继承IPointerEnterHandler和IpointerExitHandler这两个接口后可以实现两 ...
- log4cpp简单使用及踩到的坑
log4cpp是log4j的一个扩展, C++开发者可用该库记录日志,可输出到终端,亦可保存到文件. 下面简单demo展示如何输出日志到输出终端. #include <iostream> ...
- c#随机生成中文姓名
为什么要自己写这个生成器呢?大家应该都有过为测试数据发愁的时候,我就是出于这样的原因. 尽管本次代码很少,但是还会有后续的生成器分享出来. 我代码底子还不是很好,希望各位同道能够发表意见,同是也欢迎大 ...
- 【Unity Shader】渲染管线
流程概述 应用程序阶段 应用程序阶段,使用高级编程语言(C.C++.JAVA 等)进行开发,主要和CPU.内存打交道,诸如碰撞检测.场景图建立.空间八叉树更新.视锥裁剪等经典算法都在此阶段执行.在该阶 ...
- 关于MySql8.X设置允许root远程登陆的问题
这是最近在mac上使用mysql workbench上遇到的一个小问题,仔细想了想其实这个问题本身就有毛病,论起正式环境来哪家公司是直接使用root去远程登录的呢?恐怕没几个,so不纠结root了创建 ...
- No.101_第二次团队会议
时间的敲定 在这一次的会议中,明确了任务目标,将任务进行合理分配,并且规划了整个任务的时间节点,这对团队来说非常重要. 一.最终项目 在上一节课的时候,我们最终没有拿到学霸开发项目,最后爬虫也被选走了 ...
- 5233杨光--Linux第二次实验
实验说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou,密码shiyanlou 若不小心登出后,直接刷新页面即可 2. 环境使用 完成实验后可以点击桌面上方的“实验截图”保存并分享实 ...