hdu 5078 Osu!
来源:互联网 发布:mac office 转换成pdf 编辑:程序博客网 时间:2024/05/10 02:19
Osu!
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others)Total Submission(s): 1276 Accepted Submission(s): 668
Special Judge
Problem Description
Osu! is a very popular music game. Basically, it is a game about clicking. Some points will appear on the screen at some time, and you have to click them at a correct time.
Now, you want to write an algorithm to estimate how diffecult a game is.
To simplify the things, in a game consisting of N points, point i will occur at time ti at place (xi, yi), and you should click it exactly at ti at (xi, yi). That means you should move your cursor from point i to point i+1. This movement is called a jump, and the difficulty of a jump is just the distance between point i and point i+1 divided by the time between ti and ti+1. And the difficulty of a game is simply the difficulty of the most difficult jump in the game.
Now, given a description of a game, please calculate its difficulty.
Now, you want to write an algorithm to estimate how diffecult a game is.
To simplify the things, in a game consisting of N points, point i will occur at time ti at place (xi, yi), and you should click it exactly at ti at (xi, yi). That means you should move your cursor from point i to point i+1. This movement is called a jump, and the difficulty of a jump is just the distance between point i and point i+1 divided by the time between ti and ti+1. And the difficulty of a game is simply the difficulty of the most difficult jump in the game.
Now, given a description of a game, please calculate its difficulty.
Input
The first line contains an integer T (T ≤ 10), denoting the number of the test cases.
For each test case, the first line contains an integer N (2 ≤ N ≤ 1000) denoting the number of the points in the game. Then N lines follow, the i-th line consisting of 3 space-separated integers, ti(0 ≤ ti < ti+1 ≤ 106), xi, and yi (0 ≤ xi, yi ≤ 106) as mentioned above.
For each test case, the first line contains an integer N (2 ≤ N ≤ 1000) denoting the number of the points in the game. Then N lines follow, the i-th line consisting of 3 space-separated integers, ti(0 ≤ ti < ti+1 ≤ 106), xi, and yi (0 ≤ xi, yi ≤ 106) as mentioned above.
Output
For each test case, output the answer in one line.
Your answer will be considered correct if and only if its absolute or relative error is less than 1e-9.
Your answer will be considered correct if and only if its absolute or relative error is less than 1e-9.
Sample Input
252 1 93 7 25 9 06 6 37 6 01011 35 6723 2 2929 58 2230 67 6936 56 9362 42 1167 73 2968 19 2172 37 8482 24 98
Sample Output
9.219544457354.5893762558HintIn memory of the best osu! player ever Cookiezi.
给出时间和坐标,求出最快的速度,,
#include<stdio.h>#include<iostream>#include<string.h>#include<math.h>#include<algorithm>using namespace std;struct node{double t,x,y;}a[1100];double b[1000000];bool cmp(node a,node b){return a.t<b.t;}int main(){int t,i,j,k,n;scanf("%d",&t);while(t--){scanf("%d",&n);for(i=0;i<n;i++){scanf("%lf%lf%lf",&a[i].t,&a[i].x,&a[i].y);}sort(a,a+n,cmp);double ans=-1.0;for(i=1;i<n;i++){double p=sqrt((a[i].x-a[i-1].x)*(a[i].x-a[i-1].x)+(a[i].y-a[i-1].y)*(a[i].y-a[i-1].y));double tt=fabs(a[i].t-a[i-1].t); if(p/tt>ans)ans=p/tt; }printf("%.10lf\n",ans);}return 0;}
0 0
- hdu 5078 Osu!
- [ACM] HDU 5078 Osu!
- hdu 5078 Osu!(水题)
- HDU 5078 Osu!
- HDU 5078 Osu!
- HDU 5078 Osu!
- HDU 5078--Osu!【水题】
- hdu 5078 Osu!
- hdu 5078 Osu!
- hdu 5078 Osu!(水)
- HDU 5078-Osu!(签到)
- hdu 5078——Osu!
- HDU 5078 Osu!(水题)
- hdu 5078 Osu!(鞍山现场赛)
- hdu 5003 Osu!(水题)
- hdu 5003 Osu!
- HDU oj Osu! 5003
- HDU 5003 Osu!
- 旅行
- HDU 1533 (最小费用最大流)(spfa+ek或spfa+dinic)
- 【effective c++读书笔记】【第5章】实现(1)
- 《高质量程序设计指南C/C++语言 》 林锐,韩永泉编著 总结1
- Browser caching
- hdu 5078 Osu!
- HDU 4343 多查询求区间内的最大不相交区间个数-思维&贪心-卡时间&二分&剪枝
- Triangle
- 扫描二维码自动识别手机系统(Android/IOS)跳转不同页面
- HDOJ 变形课 (DFS)
- Html5实例之婚庆界面
- Struts2学习心得——传参
- E2BAF1CC
- Java初学者最好理解的排序