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 ...
随机推荐
- Win10 UWP系列:关于错误 0x80073CF9及一个小bug的解决
最近一直在开发XX的uwp版本,也是边摸索边做,最近遇到几个比较奇怪的问题,记录于此. 1.项目可用部署到PC,但无法部署到手机,提示以下错误: 错误 : DEP0001 : 意外错误: Instal ...
- jQuery图片延迟加载
这里延迟加载的意思是,拖动滚动条时,在图片出现在浏览器显示区域后才加载显示.在这之前全部图片都由一张图片代替.节省流量,减轻服务器负担. 效果展示 http://hovertree.com/texia ...
- TinyMCE的使用(包括汉化及本地图片上传功能)
TinyMCE我就不多介绍了,这是下载地址:https://www.tinymce.com/download/ 下载下来是英文版,要汉化也很简单.首先去网上随便下载个汉化包,然后把汉化包解压后的lan ...
- C#开发微信门户及应用(3)--文本消息和图文消息的应答
微信应用如火如荼,很多公司都希望搭上信息快车,这个是一个商机,也是一个技术的方向,因此,有空研究下.学习下微信的相关开发,也就成为计划的安排事情之一了.本系列文章希望从一个循序渐进的角度上,全面介绍微 ...
- Eclipse "Unable to install breakpoint due to missing line number attributes..."
Eclipse 无法找到 该 断点,原因是编译时,字节码改变了,导致eclipse无法读取对应的行了 1.ANT编译的class Eclipse不认,因为eclipse也会编译class.怎么让它们统 ...
- activiti工作流的web流程设计器整合视频教程 SSM 和 独立部署
本视频为activiti工作流的web流程设计器整合视频教程 整合Acitiviti在线流程设计器(Activiti-Modeler 5.21.0 官方流程设计器) 本视频共讲了两种整合方式 1. 流 ...
- Java NIO概述
Java NIO 由以下几个核心部分组成: Channels Buffers Selectors 虽然 Java NIO 中除此之外还有很多类和组件,但在我看来,Channel,Buffer 和 Se ...
- 在Thinkphp中使用AJAX实现无刷新分页
在Thinkphp目录的Lib\ORG\Util\目录里新建AjaxPage.class.php,写入一下内容: <?php // +------------------------------ ...
- SVG Path高级教程
课程分为四个方面: 1. Path概述 2. 移动和直线命令 3. 弧线命令 4. 贝塞尔曲线命令 Path概述 <path> 标签用来定义路径,Path字符串是由命令及其参数组组成的字符 ...
- JavaScript学习笔记1之基础知识点
一.什么是JavaScrip JavaScript是一种动态类型.弱类型.基于原型的客户端脚本语言.它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,在HTML网页 ...