博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
bzoj 2784 [JLOI2012]时间流逝——树上高斯消元
阅读量:6991 次
发布时间:2019-06-27

本文共 895 字,大约阅读时间需要 2 分钟。

题目:

一个状态可以加很多个能量圈,但减少能量圈的情况只有一种。所以可以用树来刻画。

然后就变成树上高斯消元的套路了。注意根节点的 P 等于 0 。

发现不是要求 dp[ 1 ] 就必须在那个式子里设出 a*dp[ 1 ] 之类的。

据说树上的点大概有 1.2*106 个。大概就是贝尔数吧。

#include
#include
#include
#define mkp make_pair#define fir first#define sec second#define db doubleusing namespace std;const int N=35;int n,m,w[N];db P;pair
dfs(int lm,int s){ db ta=0,tb=0;if(s>n)return mkp(0,0); for(int i=1;i<=lm;i++) { pair
v=dfs(i,s+w[i]); ta+=v.fir; tb+=v.sec; } if(!s)P=0; ta=1-(1-P)/lm*ta; ta=1/ta; tb=((1-P)/lm*tb+1)*ta; ta=P*ta; return mkp(ta,tb);}int main(){ while(scanf("%lf",&P)==1) { scanf("%d%d",&n,&m); for(int i=1;i<=m;i++)scanf("%d",&w[i]); sort(w+1,w+m+1);// printf("%.3f\n",dfs(m,0).sec); } return 0;}

 

转载于:https://www.cnblogs.com/Narh/p/10280113.html

你可能感兴趣的文章
腾讯2014年实习生招聘笔试面试经历
查看>>
不浮躁,获取充实感
查看>>
Pyqt 国际化多语言支持
查看>>
大多数女生为什么不适合当程序员?
查看>>
SID1190471 / 烦人的幻灯片 暴力出奇迹 !!!!!!!!!!!!!!!!!!...
查看>>
高速排序 与 随机高速排序 算法分析
查看>>
使用MyEclipse 2014构建Maven项目的两种方法
查看>>
WebGIS中以version方式实现代码更新后前端自动读取更新代码的方法
查看>>
Centos 安装Apache软件
查看>>
微信小程序中在swiper-item中遍历循环添加多个数据内容(微信小程序交流群:604788754)...
查看>>
java-mybaits-00503-延迟加载
查看>>
看淡你的权力
查看>>
Linux学习(一)
查看>>
[1-5] 把时间当做朋友(李笑来)Chapter 5 【小心所谓成功学】 摘录
查看>>
POJ 3126 Prime Path SPFA
查看>>
Shortest Path [3]
查看>>
离线情报分析工具CaseFile
查看>>
【iCore4 双核心板_FPGA】例程九:锁相环实验——锁相环使用
查看>>
05Hadoop-左外连接
查看>>
python3 识别图片文字
查看>>