您的位置:首页 > 其它

The 36th ACM/ICPC Asia Regional Chengdu Site —— Online Contest

2011-09-11 21:42 507 查看
这场比赛我们队做了三题,4033,4034,4039,再多一点点时间4036还可以出的,没时间去看这个题了,赛后稍微想了一下就出了,这几个题在所有题里应该都算是简单题!

我做了4033,还把公式写反了,cos(x)=(a^2+b^2-c^2/(2*a*b),被我写成了cos(x)=(c^2-a^2-b^2)/(2*a*b),真是脑残!上一场的比赛本来已经想出了方法的,还多跑了一个IDA*,各种脑残呀!



1.4033(二分答案,注意精度公式别写错就没问题了)

#include <iostream>
#include<cmath>
using namespace std;
const double PI=acos((double)-1.0);
const double HPI=PI/2,DPI=2*PI;
const double EPS=1e-10;
#define N 110
double a
,aa
;
int main()
{
int cases;
scanf("%d",&cases);
for(int k=1;k<=cases;k++)
{
double l=0,r=1e200,mid;
int i,n;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%lf",a+i);
aa[i]=a[i]*a[i];
}//mid*mid
for(i=0;i<n;i++)
{
double tmp=a[i]+a[(i+1)%n];
if(r>tmp)r=tmp;
tmp=fabs(a[i]-a[(i+1)%n]);
if(l<tmp)l=tmp;
}
printf("Case %d: ",k);
double ans;
bool f=false;
while(r-l>EPS)
{
ans=0;
mid=(l+r)/2;
for(i=0;i<n;i++)
{
int next=(i+1)%n;
double tmp=acos((aa[i]+aa[next]-mid*mid)/(2*a[i]*a[next]));
ans+=tmp;
}

if(ans-DPI>EPS)r=mid;
else if(DPI-ans>EPS)l=mid;
else
{
printf("%.3lf\n",mid);
f=true;
break;
}
}
if(!f)printf("impossible\n");
}
return 0;
}


2.4039(直接能量守恒求出初使的速度,取最大值最行了)

注意一点,给出的人不一定按x的坐标有序,害我无限WA。

#include <iostream>
#include<cstdio>
#include<cmath>
using namespace std;
//const double  EPS=1e-10;

#define N 1010
struct Point{
double x,y;
}p
;

double cal(int cur,double x0)
{
double t=(p[cur-1].x-x0)*(p[cur-1].y-p[cur].y)/(p[cur-1].x-p[cur].x);
return p[cur-1].y-t;
}
int main()
{
#ifndef ONLINE_JUDGE
freopen("data.in", "r", stdin);
//freopen("data.out","w",stdout);
#endif

int cases;
cin>>cases;
for(int i=1;i<=cases;i++)
{
int j,n,m;
double x,y,w,maxh=0,v,vv;
scanf("%d%d%lf",&n,&m,&w);

for(j=0;j<n;j++)
{
scanf("%lf%lf",&p[j].x,&p[j].y);
maxh=p[j].y>maxh?p[j].y:maxh;
}
vv=40*(maxh-p[0].y);

for(j=0;j<m;j++)
{
scanf("%lf%lf%lf",&x,&v,&w);
int cur=1;
while(x>p[cur].x)cur++;

y=cal(cur,x);
double tmp=v*v+40*(y-p[0].y);
vv=tmp>vv?tmp:vv;
}
printf("Case %d: %.2lf\n",i,sqrt(vv));
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐