[NOIP2016]换教室 期望dp
先弗洛伊德,然后把状态拆分遗传
#include<iostream>
#include<cstdio>
#include<cstring>
#include<cstdlib>
#define f(a,b,c) g[a+10][b+10][c+1]
#define N 2100
#define M 320
using namespace std;
typedef double D;
int d[M][M],c[N][];
D g[N][N][];
int n,m,v,e;
D w[N];
inline int MIN(int x,int y)
{
return x<y?x:y;
}
inline D Min(D x,D y)
{
return x<y?x:y;
}
int main()
{
freopen("classrooma.in","r",stdin);
freopen("classrooma.out","w",stdout);
scanf("%d%d%d%d",&n,&m,&v,&e);
for(int i=;i<=n;i++)
scanf("%d",&c[i][]);
for(int i=;i<=n;i++)
scanf("%d",&c[i][]);
for(int i=;i<=n;i++)
scanf("%lf",&w[i]);
memset(d,0x3f,sizeof(d));
for(int i=;i<=v;i++)
d[i][i]=;
for(int i=;i<=e;i++)
{
int x,y,z;
scanf("%d%d%d",&x,&y,&z);
d[y][x]=d[x][y]=MIN(d[x][y],z);
}
for(int k=;k<=v;k++)
for(int i=;i<=v;i++)
for(int j=;j<=v;j++)
d[i][j]=MIN(d[i][j],d[i][k]+d[k][j]);
for(int i=;i<N;i++)
for(int j=;j<N;j++)
for(int k=;k<;k++)
g[i][j][k]=2000000000.00;
f(,,)=;
if(m)f(,,)=;
for(int i=;i<=n;i++)
{
f(i,,)=f(i-,,)+d[c[i-][]][c[i][]];
for(int j=;j<=m;j++)
{
f(i,j,)=Min(f(i-,j,)+d[c[i-][]][c[i][]],f(i-,j,)+w[i-]*d[c[i-][]][c[i][]]+(1.0-w[i-])*d[c[i-][]][c[i][]]);
f(i,j,)=f(i-,j-,)+w[i]*w[i-]*d[c[i-][]][c[i][]]+(1.0-w[i])*w[i-]*d[c[i-][]][c[i][]]+(1.0-w[i])*(1.0-w[i-])*d[c[i-][]][c[i][]]+w[i]*(1.0-w[i-])*d[c[i-][]][c[i][]];
f(i,j,)=Min(f(i,j,),f(i-,j-,)+w[i]*d[c[i-][]][c[i][]]+(1.0-w[i])*d[c[i-][]][c[i][]]);
}
}
D ans=2000000000.00;
for(int i=;i<=m;i++)
ans=Min(ans,Min(f(n,i,),f(n,i,)));
printf("%.2lf",ans);
return ;
}
[NOIP2016]换教室 期望dp的更多相关文章
- bzoj4720: [Noip2016]换教室(期望dp)
4720: [Noip2016]换教室 Time Limit: 20 Sec Memory Limit: 512 MBSubmit: 1294 Solved: 698[Submit][Status ...
- 【bzoj4720】[NOIP2016]换教室 期望dp
题目描述 对于刚上大学的牛牛来说,他面临的第一个问题是如何根据实际情况申请合适的课程.在可以选择的课程中,有2n节课程安排在n个时间段上.在第i(1≤i≤n)个时间段上,两节内容相同的课程同时在不同的 ...
- 【bzoj4720】[Noip2016]换教室 期望dp+最短路
Description 对于刚上大学的牛牛来说,他面临的第一个问题是如何根据实际情况申请合适的课程.在可以选择的课程中,有2n节 课程安排在n个时间段上.在第i(1≤i≤n)个时间段上,两节内容相同的 ...
- JZYZOJ1457 [NOIP2016]换教室 期望dp 动态规划 floyd算法 最短路
http://172.20.6.3/Problem_Show.asp?id=1457 我不知道为什么我倒着推期望只有80分,所以我妥协了,我对着题解写了个正的,我有罪. #include<cst ...
- 洛谷1850(NOIp2016) 换教室——期望dp
题目:https://www.luogu.org/problemnew/show/P1850 状态里记录的是”上一回有没有申请“,而不是”上一回申请成功否“,不然“申请 j 次”就没法转移了. dou ...
- 洛谷P1850 [noip2016]换教室——期望DP
题目:https://www.luogu.org/problemnew/show/P1850 注释掉了一堆愚蠢,自己还是太嫩了... 首先要注意选或不选是取 min 而不是 /2 ,因为这里的选或不选 ...
- 换教室(期望+DP)
换教室(期望+DP) \(dp(i,j,1/0)\)表示第\(i\)节课,申请了\(j\)次调换,这节课\(1/0\)调换. 换教室 转移的时候考虑: 上次没申请 这次也没申请 加上\(dis(fr[ ...
- 【BZOJ4720】【NOIP2016】换教室 [期望DP]
换教室 Time Limit: 20 Sec Memory Limit: 512 MB[Submit][Status][Discuss] Description Input 第一行四个整数n,m,v ...
- Luogu P1850 [NOIp2016提高组]换教室 | 期望dp
题目链接 思路: <1>概率与期望期望=情况①的值*情况①的概率+情况②的值*情况②的概率+--+情况n的值*情况n的概率举个例子,抛一个骰子,每一面朝上的概率都是1/6,则这一个骰子落地 ...
随机推荐
- mac 安装requests
首先mac上已经安装了python,我的是python2x,我自己安装了python3,python3安装requests,控制台,输入,pip3 install requests 下面就已经安装完成 ...
- django模型的字段查询
条件运算符 exact: 查判等 list=BookInfo.objects.filter(id__exact=1) 可简写为: list=BookInfo.objects.filter(id=1) ...
- spring-boot整合ehcache实现缓存机制
EhCache 是一个纯Java的进程内缓存框架,具有快速.精干等特点,是Hibernate中默认的CacheProvider. ehcache提供了多种缓存策略,主要分为内存和磁盘两级,所以无需担心 ...
- Leecode刷题之旅-C语言/python-88合并两个有序数组
/* * @lc app=leetcode.cn id=88 lang=c * * [88] 合并两个有序数组 * * https://leetcode-cn.com/problems/merge-s ...
- UVA - 1606 Amphiphilic Carbon Molecules 极角扫描法
题目:点击查看题目 思路:这道题的解决思路是极角扫描法.极角扫描法的思想主要是先选择一个点作为基准点,然后求出各点对于该点的相对坐标,同时求出该坐标系下的极角,按照极角对点进行排序.然后选取点与基准点 ...
- Spring + MySQL + Mybatis + Redis【二级缓存】
一.Redis环境 Redis 官网 :http://redis.io/ windows下载:https://github.com/dmajkic/redis/downloads 1.文件解压缩 2. ...
- Sql Server 2008 R2数据库中插入中文变成了问号
通过Insert语句插入数据库中,结果中文都变成了乱码.原因是在数据库中有一个属性需要设置,可以通过Sql server manager studio来进行设置,也要可以通过代码来设置 ...
- jquery框架一点小心得
下面的小事例 主要实现了 一和按ID查找,并获取元素的 value 或 标签内容和一个去字符串空格的小功能能 假设元素id=“myid”: 获取标签内容$("myid").html ...
- Linux系统学习笔记(1)
学习地址:http://www.runoob.com/linux/linux-tutorial.html 1.学习Windows和Linux哪个比较难? 前期是Windows容易学习,后期是Linux ...
- 「日常训练」Mike and Feet(Codeforces Round #305 Div. 2 D)
题意 (Codeforces 548D) 对一个有$n$个数的数列,我们要求其连续$x(1\le x\le n)$(对于每个$x$,这样的连续group有若干个)的最小数的最大值. 分析 这是一道用了 ...