F - Sugoroku2(期望dp)

F - Sugoroku2

期望dp:fuf_ufu表示到达终点的期望于是有
fu={0,u≥nf0,u∈Afu+1+⋯+fu+mm+1f_u=\begin{cases} 0,u\ge n \\f_0,u\in A\\ \frac{f_{u+1}+\dots+f_{u+m}}{m}+1 \end{cases}fu=0,unf0,uAmfu+1++fu+m+1

由于存在返回f0f_0f0的操作,最终出来一定是一个关于f0f_0f0的方程,对于每个点维护f0f_0f0的系数和常数即fu=kf0+bf_u=k f_0+bfu=kf0+b

最后解方程即f0=kf0+bf_0=k f_0+bf0=kf0+b,显然k=1k=1k=1时无解。

对于更新每一个fu=fu+1+⋯+fu+mm+1f_u= \frac{f_{u+1}+\dots+f_{u+m}}{m}+1fu=mfu+1++fu+m+1可以记录后缀和优化

#define IO ios::sync_with_stdio(false);cin.tie();cout.tie(0)
#pragma GCC optimize(2)
#include<set>
#include<map>
#include<cmath>
#include<stack>
#include<queue>
#include<bitset>
#include<random>
#include<bitset>
#include<string>
#include<vector>
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#include<unordered_map>
#include<unordered_set>
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
typedef pair<ll,int> pli;
typedef pair<int,int> pii;
const ll mod=1e9+7;
const int N=200010;
long double f[N][2];
long double sum[N][2];
bool st[N];
int n,m,k;
int main()
{IO;int T=1;//cin>>T;while(T--){cin>>n>>m>>k;for(int i=1;i<=k;i++){int a;cin>>a;st[a]=1;}f[n][0]=0,f[n][1]=0;for(int i=n-1;i>=0;i--){if(st[i]) f[i][0]=1,f[i][1]=0;else{f[i][0]=(sum[i+1][0]-sum[i+1+m][0])/m;f[i][1]=(sum[i+1][1]-sum[i+1+m][1])/m+1.0;}sum[i][0]=sum[i+1][0]+f[i][0];sum[i][1]=sum[i+1][1]+f[i][1];}if(fabs(f[0][0]-1.0)<1e-6) puts("-1");else printf("%.4llf\n",f[0][1]/(long double)(1.0-f[0][0]));}return 0;
}

训练赛真的垃圾,努力训练
要加油哦~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/319097.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

.NET Core2使用Azure云上的Iot-Hub服务

基于工业4.0大背景下的工业物联网是近几年内热门的话题&#xff0c;依靠信息化技术企业可以实现数字化转型&#xff0c;生产可以实现智能化制造&#xff0c;设备可以实现自动化运作。然而&#xff0c;海量的数据采集是整个建设过程的基础环节&#xff0c;如何处理与利用这海量的…

Matrix Subtraction(小米icpc邀请赛第一场)

Matrix Subtraction 题意&#xff1a; 一个给定的矩阵&#xff0c;然后给定一个子矩阵的大小&#xff0c;子矩阵可以 将覆盖矩阵的区域的值减1&#xff0c;问能否将矩阵全部减为0 题解&#xff1a; 思路和下面这个链接讲的题十分相似 传送 本质就是二维树状数组差分求解 用…

E - Rotate and Flip(线性代数矩阵坐标变换)

E - Rotate and Flip 顺时针 [010−100001][xy1][y−x1]\begin{bmatrix} 0 & 1 & 0\\ -1&0&0\\0 &0&1 \end{bmatrix}\begin{bmatrix} x\\y\\1 \end{bmatrix}\begin{bmatrix} y\\-x\\1 \end{bmatrix}⎣⎡​0−10​100​001​⎦⎤​⎣⎡​xy1​⎦⎤​⎣…

CF755G-PolandBall and Many Other Balls【倍增FFT】

正题 题目链接:https://www.luogu.com.cn/problem/CF755G 题目大意 nnn个东西排成一排&#xff0c;每个组可以选择一个单独的物品或者两个连续的物品&#xff0c;一个物品不同同时在两个组里&#xff0c;但是可以不在组里。对于i∈[1,k]i\in[1,k]i∈[1,k]求分成iii组的方案数。…

Intelligent Warehouse(小米邀请赛)

题目 题意&#xff1a; n个数字&#xff0c;问存在的最长的一组数&#xff0c;使得其中任意两个数的都是倍数关系&#xff0c;问最长的长度是多少 题解&#xff1a; 暴力。。。 没想到暴力就能做&#xff0c;当时就该交上去试试的 用dp[i]表示当期选的所有数都是i的约数且符…

SmartCode.ETL 这不是先有鸡还是蛋的问题!

继国庆节 SmartCode 正式版&#xff08;SmartCode.Generator&#xff09;发布之后&#xff0c;SmartCode 迎来了新的能力 SmartCode.ETL !SmartCode 正式版从开始发布就从未说过自己仅仅是个代码生成器&#xff0c;这点上从我第一次宣布SmartCode正式开源的文章就可以说明&…

codeforces1469 E. A Bit Similar

E. A Bit Similar 代码抄的这份题解 找到一个长度为k的串使得在s长度为k的子串中&#xff0c;对于所有子串答案串都至少有一位相同。也就是如果将s长度为k的子串全部按位取反&#xff0c;那么答案串不能与这些反串匹配。 现在问题转化成&#xff0c;找到一个答案串&#xff…

对拍

参考博客 晚上不想刷题。。无聊的开始研究对拍 以前oi的时候看过对拍&#xff0c;奈何当时水平太差根本用不上对拍&#xff0c;&#xff08;现在水平也不咋地。。&#xff09; 上面那个博文讲的非常好。。 对拍最终的就是 对拍程序.bat 首先第一步&#xff1a;生成一组输入数据…

P7444-「EZEC-7」猜排列【dp】

正题 题目链接:https://www.luogu.com.cn/problem/P7444 题目大意 一个长度为nnn的排列&#xff0c;已知每个cic_ici​表示那个排列中mexmexmex为iii的区间个数。求满足条件的排列个数 1≤n≤5105,ci≥0,∑i1ncin(n1)2−11\leq n\leq 5\times 10^5,c_i\geq 0,\sum_{i1}^nc_i\…

dubbo线程池为什么耗尽

文章概述 大家可能都遇到过DUBBO线程池打满这个问题&#xff0c;报错如下&#xff0c;本文我们就一起分析DUBBO线程池打满这个问题。 cause: org.apache.dubbo.remoting.RemotingException: Server side(10.0.0.100,20881) thread pool is exhausted, detail msg:Thread pool …

手把手教你写DI_0_DI是什么?

DI是什么&#xff1f;Dependency Injection 常常简称为&#xff1a;DI。它是实现控制反转&#xff08;Inversion of Control – IoC&#xff09;的一个模式。fowler 大大大神 “几十年”前的经典文章 https://www.martinfowler.com/articles/injection.html 说的很清楚。“几十…

C++顺序创建txt文件

今天下午在对拍数据的时候感觉好麻烦。。 一次次手调文件名称&#xff0c;突然想起可以直接写段程序集中操作 顺序输出 #include <iostream> #include <fstream> #include<string> using namespace std;int main () {ofstream File;for(int i0;i<3;i){str…

【模板】字符串哈希

ACM模板 目录构建应用构建 字符串哈希就是将字符串映射成一个数&#xff0c;哈希冲突是不可避免的&#xff0c;我们需要选用合适的base尽可能使得哈希冲突可能性降低 unsigned long long溢出后相当于取模&#xff0c;相当于模264−12^{64}-1264−1 get(l,r)函数返回字符串下标…

P5137-polynomial【倍增】

正题 题目链接:https://www.luogu.com.cn/problem/P5137 题目大意 TTT组数据给出n,a,b,pn,a,b,pn,a,b,p求 (∑01naibn−i)%p\left(\sum_{01}^na^ib^{n-i}\right)\%p(01∑n​aibn−i)%p 1≤T≤105,1≤n,a,b,p≤10181\leq T\leq 10^5,1\leq n,a,b,p\leq 10^{18}1≤T≤105,1≤n,a…

使用Visual Studio Code开发.NET Core看这篇就够了

在本文中&#xff0c;我将带着大家一步一步的通过图文的形式来演示如何在Visual Studio Code中进行.NET Core程序的开发&#xff0c;测试以及调试。尽管Visual Studio Code的部分功能还达不到Visual Studio的水平&#xff0c;但它实际上已经足够强大来满足我们的日常开发。而且…

【模板】最大权闭合图

ACM模板 目录概念建图证明模板题概念 闭合图中所有的点的出边必须指向内部的点 建图 原图的边在网络流中的边容量是INF&#xff0c;如果点权是正&#xff0c;那么源点向其连边&#xff0c;容量是点权&#xff1b;否则它向汇点连边&#xff0c;容量是点权绝对值 证明 考虑最…

P4707-重返现世【dp,数学期望,扩展min-max容斥】

正题 题目链接:https://www.luogu.com.cn/problem/P4707 题目大意 nnn个物品&#xff0c;每次生成一种物品&#xff0c;第iii个被生成的概率是pim\frac{p_i}{m}mpi​​&#xff0c;求生成至少kkk种物品的期望次数。 1≤n≤1000,max{n−10,1}≤k≤n,1≤m≤100001\leq n\leq 100…

手把手教你写DI_3_小白徒手支持 Singleton 和 Scoped 生命周期

在上一节&#xff1a;手把手教你写DI_2_小白徒手撸构造函数注入浑身绷带的小白同学&#xff1a;我们继续开展我们的工作&#xff0c;大家都知道 Singleton是什么&#xff0c;就是全局只有一个呗&#xff0c;我们就先从它开始&#xff0c;这个多简单&#xff0c;我们找个字典放这…

监视任务

来源&#xff1a;牛客网 &#xff1a; 时间限制&#xff1a;C/C 2秒&#xff0c;其他语言4秒 空间限制&#xff1a;C/C 131072K&#xff0c;其他语言262144K 64bit IO Format: %lld 题目描述 &#x1d445;&#x1d452;&#x1d458;&#x1d456;在课余会接受一些民间的鹰眼…

【模板】最大密度子图

ACM模板 目录概念做法例题概念 选择一个子图G′(V′,E′)G(V,E)G′(V′,E′)&#xff0c;其中对于任意一条边的两个端点必须在所选的点集中&#xff0c;最大化∣E′∣∣V′∣\frac{|E|}{|V|}∣V′∣∣E′∣​ 做法 利用01分数规划二分即最大化 ∣E′∣−g∣V′∣|E|-g|V|∣E…