首页 > 代码库 > SGU 146.The Runner
SGU 146.The Runner
时间限制:0.25s
空间限制:4M
题意:
一个人在一个周长为L的圆上跑,每个时间段(Ti)的速度(Vi)不一样,问最后他离起点的圆弧距离,周长是个有四位小数的浮点数,其它全是整数。
Solution :
在遇到浮点数的时候,能避免处理就尽量避免处理。
这里只要将浮点数乘上10000,即可当成整数处理。最后再除以10000,输出就好。
代码:
#include<cstdio>#include<cmath>typedef long long LL;const int E=10000;LL len,v,t,sum;double answer,l;int n;int main(){ int i; scanf("%lf %d",&l,&n); len=round(l*E); for(i=1;i<=n;++i){ scanf("%lld %lld",&v,&t); sum+=v*t*E; sum%=len; } answer=(double)sum; answer/=E; if(l-answer<answer)answer=l-answer; printf("%.4lf",answer);}
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。