ACM/ICPC2016 青岛区域赛
A(hdu5982)、(模拟)
题意:输入n对数,将每对数相乘并相加
分析:模拟
B(hdu5983)、(模拟)
题意:给你一个二阶魔方,问能否通过一次旋转使得给定魔方的每个面颜色相同
分析:模拟
C(hdu5984)、(数学,微分方程)
题意:有一个长为d的木棒,最右端有长为L的区域(L<=d),每次操作从木棒的某个部位切,左边的部分就全扔掉,右边的部分保留下来视为新的木棒,一直到切到右端的L区域为止才停止才做,求操作次数的数学期望。
分析:先考虑离散的,f[i]表示长为i的木棒的数学期望,则f[i]=Σ(f[k]+1)/(i-L) (L<=i<=d,L<=k<=i),尝试将小数扩大成整数,但发现精度不够。
然后把他写成积分形式:f(x)=∫f(i)di/x(0<=i<=x) + 1,于是问题就是解这个微分方程,解出f'(x)=1/x,所以f(x)=lnx+C,代入原式解得C=1-lnL
所以结果就是lnd+1-lnL=ln(d/L)+1
D(hdu5985)、(概率、递推)
题意:有n种硬币,每种硬币有ai个,每个硬币有p的概率正面朝上,每次操作后将背面朝上的硬币全部丢掉,直到只剩下一种硬币,称这种硬币为幸运硬币,求每种硬币成为幸运硬币的概率
分析:每种硬币都是独立的,分开考虑
f[i][k]表示第i种硬币,第k轮投完后硬币全部丢弃的概率
则f[i][k]=(1-p+(1-p)p+(1-p)p^2+.....)^a[i]=(1-p^k)^a[i]
那么第k轮后至少存在一枚硬币的概率就是1-f[i][k]
ans[i]=Σ(k=0..+无穷) f[1][k]*f[2][k]*...*f[i-1][k]*f[i+1][k]*....*f[n][k]*(1-f[i][k]-1+f[i][k+1]) 这里是为了防止重复
然后根据精度和时限要求,k只要取几百就行了。
G(hdu5988)、(费用流)
题意:给你个图,每个点上都有人的数量和包的数量,要求人通过走动满足每个点的包的数量>=人的数量,每条边有容量和一个走动破坏概率pi,表示如果一个人走这条边,那么有pi的概率破坏这条边(但这条边被首次经过的时候破坏概率是0),求最小的破坏概率
分析:明显的费用流,这里是乘积所以取对数变成加法
将问题看作要求不破坏概率最大
对于人的数量>=包的数量的点i,S->i,容量为差值,费用为0,对于人的数量<=包的数量的点i,i->S,容量为差值,费用为0
另外原图中的每条边都要拆一条出来,容量为1,费用为0,保证先走这个第一次走不破坏的
然后就是求S->T的最大费用最大流
注意事项:
由于精度问题,不能取ln,可以取log2或者log10
实数spfa的时候,松弛操作一定要加eps!不然会TLE
K(hdu5992)、(kdtree)
题意:给你n个宾馆的坐标和价格,有m个询问,表示每个人的坐标和手上的钱,对于每个人找出离他最近的且价格小于等于手中钱的宾馆,如果有多个,输出顺序靠前的宾馆。
分析:一个kdtree的题,可以开到三维,但计算距离时候只计算两维。
在搜索最近点的时候,更新答案时候加上第三维的判断就行
注意这里要用上第三维的mn[i]数组,代表它所管辖的矩形中钱数的最小值
如果某个节点管辖矩形中钱数的最小值>当前人手里的钱,那么就不需要进去找了
如果不加这个优化,那么很容易会TLE/爆栈(hdu容易爆栈)
ACM/ICPC2016 青岛区域赛的更多相关文章
- 2016 年 ACM/ICPC 青岛区域赛 Problem C Pocky
昨晚乱入学弟的训练赛,想了一下这个题.推导的过程中,加深了对公理化的概率论理解.$\newcommand{\d}{\mathop{}\!\mathrm{d}}$ 解法一 考虑 $ d < L$ ...
- 2015 ACM / ICPC 亚洲区域赛总结(长春站&北京站)
队名:Unlimited Code Works(无尽编码) 队员:Wu.Wang.Zhou 先说一下队伍:Wu是大三学长:Wang高中noip省一:我最渣,去年来大学开始学的a+b,参加今年区域赛之 ...
- ACM总结——2017区域赛网络赛总结
从省赛回来至今4周,每周周末都在打网络赛,每次都是划水,总结下自己弱弱的ACM吧!划水水~~ 首先是新疆赛区,基本上都是图论相关的东西,全靠队友,自己翻水水,实力躺了5道. 然后是沈阳赛区,终于有点贡 ...
- 2016ACM青岛区域赛题解
A.Relic Discovery_hdu5982 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Jav ...
- 2016青岛区域赛.Coding Contest(费用流 + 概率计算转换为加法计算)
Coding Contest Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)To ...
- Tournament ZOJ - 4063 (青岛区域赛 F 打表)
打表题.. 规律是找出来了 奈何优化不了 .... #include <iostream> #include <cstdio> #include <sstream> ...
- UVALive - 7740 Coding Contest 2016 青岛区域赛 (费用流)
题意:每个点i有\(s_i\)个人和\(b_i\)份食物,每个人都要找到一份食物.现在有M条有向边,从点i到点j,容量为c,第一次走过不要紧,从第二次开始就要承担\(p(0<p<1)\)的 ...
- Known Notation括号匹配类问题(2014年ACM/ICPC 亚洲区域赛牡丹江)
题意: 给你数字或 * 的串,你可以交换一个*和数字.在最前面添1.在一个地方插入*,问你使串满足入栈出栈的(RNP)运算法则. 思路: 引用:https://blog.csdn.net/u01158 ...
- Digit sum (第 44 届 ACM/ICPC 亚洲区域赛(上海)网络赛)进制预处理水题
131072K A digit sum S_b(n)Sb(n) is a sum of the base-bb digits of nn. Such as S_{10}(233) = 2 + 3 ...
随机推荐
- Unity iOS混合开发界面切换思路
Unity iOS混合开发界面切换思路 最近有很多博友QQ 私信 或则 留言联系我,请教iOS和Unity界面之前相互切换的问题,源代码就不私下发你们了,界面跳转功能的代码我直接贴到下面好了,顺带说i ...
- 利用fis3自动化处理asp.net项目静态资源时遇到的一个编码问题
fis3是一款强大的前端自动化构建工具,提供了很多非常实用的功能,具体参考http://fis.baidu.com/,使用该工具需要安装node环境. 最近在部署网站的时候尝试了一下使用该工具对前端资 ...
- FastSocket学习笔记~再说客户端与服务端的组成
废话多说 很久之前,我写过几篇FastSocket的文章,基本属于使用的方法,而缺乏对概念的总结讲解,而本讲就是弥补一下上几讲的不足,将核心的模块再说说,再谈谈,再聊聊! 首先FastSocket由C ...
- Servlet3.0的动态
动态的创建是为了简化配置文件的.对于我们创建的servlet,filter和listener后可以使用.这也是注解的另外一种替代方式. 动态的添加有两种,一种是基于ContextListener的,另 ...
- Java内部类学习笔记
20160923 定义:将一个类的定义放在另一个类的内部: 从外部类的非静态方法之外,创建某个内部类的对象:OutClassName.InnerClassName: 内部类拥有所有其外部类的成员的访问 ...
- arcgis api for js入门开发系列一arcgis api离线部署
在我的GIS之家QQ群里,很多都是arcgis api for js开发的新手,他们一般都是GIS专业的学生,或者从计算机专业刚刚转向来的giser,他们难免会遇到各种webgis开发的简单问题,由于 ...
- project server 2016 新功能
1.多时间轴 2.资源容量规划 3.资源请求
- React Native:使用 JavaScript 构建原生应用
[转载] 本篇为联合翻译,译者:寸志,范洪春,kmokidd,姜天意 数月前,Facebook 对外宣布了正在开发的 React Native 框架,这个框架允许你使用 JavaScript 开发原生 ...
- SQL Server附加数据库失败错误号:5120的解决办法
附加数据库时出现附加数据库失败的错误,错误号是5120,已经两次遇到这种问题了.今天写一下解决办法. 有两个方法,很简单: 1.设置mdf文件所在文件夹的权限,在文件夹上右击——属性——安全,如图所示 ...
- Oracle update和order by
今天遇到一个关于SQL转换成Oracle语句的问题,描述如下: select * from emp order by deptno; select * from dept; Sql Server: u ...