2014北京邀请赛 F Football on Table
题目来源:
http://acm.bnu.edu.cn/bnuoj/problem_show.php?pid=34986
题意:
一个人在玩桌面足球,有m行球员,每行球员有ai个,给出每个球员的宽度和相邻球员之间的距离,球从最左边射出,给出球的起点坐标跟方向向量,问能够到达最右边的概率。
思路:球员的相对位置固定,球员可以移动一定的距离。计算球经过球员的概率, 用1 - 球经过球员的概率 即为 可以穿过的概率。 枚举一遍所有行。
代码如下:
const int Max_N = 105 ; double w[Max_N] , tail[Max_N] , pos[Max_N] ; int main(){int T ;scanf("%d" , &T) ;double W, l , X, Y , dx ,dy , dis , row , tot , y , ans ;int m , num , i , k = 1;while(T--){ans = 1.0 ;scanf("%lf%lf" , &l , &W) ;scanf("%lf%lf%lf%lf" , &X, &Y , &dx , &dy) ;scanf("%d" , &m) ;while(m --){tot = 0.0 ;pos[0] = 0.0 ;scanf("%lf%d" , &row , &num) ;y = Y + dy * (row - X) / dx ;for(i = 0 ; i < num ; i++){scanf("%lf" , &w[i]) ;tot += w[i] ;}tail[0] = w[0] ;for(i = 1 ; i < num ; i++){scanf("%lf", &dis) ;pos[i] = pos[i - 1] + w[i - 1] + dis ;tail[i] = pos[i] + w[i] ;tot += dis ;}double cnt = 0.0 , len = 0.0 ;double mov = W - tot ;for(i = 0 ; i < num ; i++){ // 枚举cnt = 0.0 ;if(pos[i] <= y && (tail[i] + mov >= y) ){if(tail[i] >= y)cnt = (pos[i] + mov <= y) ? mov : (y - pos[i]) ;elsecnt = (pos[i] + mov >= y) ? w[i] : (tail[i] - y + mov) ;}len += cnt ;}if( mov == 0 ){ans = 0 ;break ;}else ans = ans * (mov - len) / mov ;}printf("Case #%d: %.5lf\n" ,k++ , ans) ;} }
转载于:https://www.cnblogs.com/zn505119020/p/3746968.html
2014北京邀请赛 F Football on Table相关推荐
- 2014 北京邀请赛ABDHJ题解
A. A Matrix 点击打开链接 构造,结论是从第一行開始往下产生一条曲线,使得这条区间最长且从上到下递减, #include <cstdio> #include <cstrin ...
- 2014 北京邀请赛 B
runtime error好多次,应该是没有用long long,数据不多,暴力就可以解决,选定两个点,长度定为两点的距离或其整数分割,需要注意的就是有相同坐标的树 题目 #include<io ...
- 2014北京三险一金缴存比例
2019独角兽企业重金招聘Python工程师标准>>> 2014北京三险一金缴存比例 名称 个人比例 公司比例 养老保险 8% 20% 医疗保险 2%+3 10% 失业保险 0.2% ...
- bnu 34986 Football on Table(数学+暴力)
题目连接:bnu 34986 Football on Table 题目大意:给出桌子的大小L,W,然后是球的起始位置sx,sy,以及移动的向量dx,dy.然后给出n.表示有n个杆,对于每一个杆.先给出 ...
- 2014北京国际广告展“新赏析”
近日,第二十一届国际广告新媒体.新技术.新设备.新材料展示交易会(简称"北京国际广告'四新'展")暨2014北京国际LED显示技术及LED城市景观照明展览会在北京中国国际展览中心( ...
- 2014 北京、西安邀请赛
今年有幸能打两场邀请赛,真的是很幸运...但是打出来的效果就...本来都没脸写总结了的,后来想了想还是写了吧,不然这两场又白打了. 由于两场比赛相隔只有一周,所以我们就给自己放了10+天的假,玩是玩爽 ...
- 我的2014——北京梦的起点和终点
今天是2014年的最后一天,很想回顾一下这一年来经历的事情和变化,但是却又不知道该写些什么,打开以前的文章开始回想起自己今年所经历的一些事,经历就是一种成长,无论我们是在挫折中度过一年,还是在阳光下顺 ...
- 2014ACM亚洲区域北京邀请赛总结
16号早上10点,作为一个28k的屌丝,穿着一双人字拖,乘着北京那一不小心说不定就能给挤怀孕的地铁,和小伙伴们一起来到了北师大.算是第三次来北师大了,前两次是北师大校赛和弱校联合集训,不过看到它们的建 ...
- ACM-ICPC2014北京邀请赛感受
路漫漫其修远兮,吾将上下而求索. 5月16日来到北京 起初的新鲜感不再那么强烈,即使是帝都,也有管理不善的地方,空气也确实不太好. 晚上和whatever一起刷百度之星,互相不习惯各自的代码风格,还为 ...
- hdu 5120(求两个圆环相交的面积 2014北京现场赛 I题)
两个圆环的内外径相同 给出内外径 和 两个圆心 求两个圆环相交的面积 画下图可以知道 就是两个大圆交-2*小圆与大圆交+2小圆交 Sample Input 2 2 3 0 0 0 0 2 3 0 0 ...
最新文章
- Aduna ClusterMap 的说明
- 提升效率的JQUERY(转)
- Amazon S3数据存储
- STM32PB2(BOOT1)使用注意
- boost::geometry::make用法的测试程序
- 事务与分布式事务原理与实现
- iOS高级-QuartzCore框架-背景平铺
- MySQL中NOT IN语句对NULL值的处理
- 【算法07】求子数组的最大和
- 58技术主席孙玄:硬核揭秘万亿级微服务分布式事务实战!
- python设计程序界面_python图形界面(GUI)设计
- Fluent:如何用Custom Field Function Calculater替代UDMI提高收敛性
- 程序员用实力把公司干倒闭了
- C#远程时间同步助手软件设计
- 调频广播信号覆盖质量智能监测系统
- MBTI职业性格测试小程序
- PCB板上的字母代表哪些元器件?一文看全!
- Linux之美—windows server基础(在windows上安装server机)
- 用opencv简单绘图
- Metal每日分享,图像阀值素描滤镜效果