首页 > 其他分享 >Educational DP Contest——J 期望dp

Educational DP Contest——J 期望dp

时间:2022-11-26 12:11:35浏览次数:82  
标签:Educational 1.0 int rep back dp DP define

题目链接

https://atcoder.jp/contests/dp/tasks/dp_j

AC代码

点击查看代码
#include<bits/stdc++.h>
#define rep(i,x,y) for(int i=x; i<=y; ++i)
#define per(i,x,y) for(int i=x; i>=y; --i)
#define pushk push_back
#define popk pop_back
#define mem(a,b) memset(a,b,sizeof a)
#define ll long long
#define emk emplace_back
using namespace std;
const int  N = 300+9;
double dp[N][N][N];
int cnt[4];
int a[N];
int main() {
	
	int n;
	cin>>n;
	rep(i,1,n) cin>>a[i],cnt[a[i]]++;
	dp[0][0][0]=0;
	rep(k,0,n){
		rep(j,0,n){
			rep(i,0,n){
				int t = i+j+k; 
				if(i) dp[i][j][k]+=i*1.0/t*dp[i-1][j][k];
				//(i,j)用到了(i+1,j-1),所以j要在i前面 
				if(j) dp[i][j][k]+=j*1.0/t*dp[i+1][j-1][k];
				// (j,k)用到了(j+1,k-1),所以k要在j的外层 
				if(k) dp[i][j][k]+=k*1.0/t*dp[i][j+1][k-1]; 
				if(t) dp[i][j][k]+=n*1.0/t;
				//cout<<dp[i][j][k]<<endl;
			}
		} 
	}
	printf("%.10f\n",dp[cnt[1]][cnt[2]][cnt[3]]);
	return 0;
}

标签:Educational,1.0,int,rep,back,dp,DP,define
From: https://www.cnblogs.com/Jin-yt/p/16927203.html

相关文章

  • Golang中一个不错的处理 JSON 的库 go-dproxy
    国庆七天,你是吃多了,还是睡多了?放假七天转眼即逝,接下来的七天可能你又觉得会很漫才。言归正传。Golang虽然自己就带了JSON(encoding/json)处理的库,也有第三方的simplejs......
  • 分享WordPress博客搜索引擎优化的六点经验
    wordpress是非常不错的博客程序,也是很多博客爱好者所喜欢的建站程序之一,wordpress不仅仅模版丰富,而且有足够的插件可以供我们选择,wordpress在搜索引擎......
  • Job for xrdp.service failed because the control process exited with error code.x
    ​解决方法:touch/var/log/xrdp.logchownxrdp:adm/var/log/xrdp.logchmod640/var/log/xrdp.logReboot systemctlstartxrdpsystemctlstatusxrdp 来自......
  • WordPress 主题教程 #5c:日志元数据
    日志元数据是从零开始创建WordPress主题系列教程的五篇的第三部分,今天我们将开始讲解日志的元数据(Postmetadata):日期(date),分类(categories),作者(author),评论数(numberofcomment......
  • WordPress 主题教程 #6:侧边栏
    侧边栏是从零开始创建WordPress主题系列教程的第六篇,这一篇我们主要讲解WordPress主题的侧边栏,让你很快掌握它的结构,并能编码和样式化它。在开始侧边栏之前,这是现在in......
  • [DP 倍增]区间的连续段
    [DP倍增]区间的连续段题目​​题目链接​​思路题意:给你长度为n的数组,由m次查询,每次查询问对于区间[l,r],最少把区间内数切成几段,使得每一段满足和都<=k。个人学习记录使用......
  • [DP/贪心 时间] P1717 钓鱼
    [DP时间]P1717钓鱼​​题目链接​​题目思路贪心可以做的比较简单,不过这里打算练习一下DP写法为了简化计算,把5分钟设为单位时间状态表示表示走到第i个湖钓鱼,耗时j属性:ma......
  • 【状压DP】哈密顿回路问题
    【状压DP】哈密顿回路问题lzq同学在我准备午睡的时候发了一道蓝桥杯的题目给我,是哈密顿回路的。第一次看的时候是想DFS+双向搜索优化减小搜索树规模,然后写烂了(如果有大佬用......
  • [DP 字符串 计数去重]L3-020 至多删三个字符
    [DP字符串]L3-020至多删三个字符题目思路状态表示集合属性:count(不包含重复)状态计算:删除第i个或者不删除第i个这题比较恶心的地方在于去重aacdbb删掉最后一个b和删除......
  • [DP 形状 线性]P1990 覆盖墙壁
    [DP形状线性]P1990覆盖墙壁​​题目链接​​思路把边界形状作为状态标识,类似杨老师照相序列那题为长度为i,状态为j的方案数目标是:代码//Problem:P1990覆盖墙壁//Con......