hdu 4036

View Code
#include<stdio.h>
#include
<math.h>
#include
<string.h>
struct PEAK{
double x,h;
}p[
1100];
struct bit{
double x,v,m;
}pat[
1100];
int main()
{
int G=20;
double h;
int t,cases=1,i,j,n,m,w;
scanf(
"%d",&t);
while(t--)
{
double v0=0,temp;
scanf(
"%d%d%d",&n,&m,&w);
for(i=1;i<=n;i++)
{
///printf("fd");
scanf("%lf%lf",&p[i].x,&p[i].h);
if(p[i].h-p[1].h<=0)
temp
=0;
else temp=sqrt(2*G*(p[i].h-p[1].h));
if(temp>v0) v0=temp;
}
double vx,v=0;
for(i=1;i<=m;i++)
{
//printf("fsd");
scanf("%lf%lf%lf",&pat[i].x,&pat[i].v,&pat[i].m);
pat[i].x
+=p[1].x;
for(j=1;j<n;j++)
{
if(pat[i].x>=p[j].x&&pat[i].x<=p[j+1].x)
{
h
=(1.0*(p[j+1].h-p[j].h)/(p[j+1].x-p[j].x))*(pat[i].x-p[j].x) + p[j].h;
break;
}
}
vx
=sqrt(1.0*pat[i].v*pat[i].v+1.0*2*G*(h-p[1].h));
if(vx>v)
v
=vx;
}
if(v>v0) printf("Case %d: %.2lf\n",cases++,v);
else printf("Case %d: %.2lf\n",cases++,v0);
}
return 0;
}

赤裸裸的水题啊, 但悲剧啊,比赛时一直把h定义成整形的,这就是悲剧,悲剧。。。伤。。。。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值