P1291 [SHOI2002]百事世界杯之旅 (期望)

2023-12-19 15:10

本文主要是介绍P1291 [SHOI2002]百事世界杯之旅 (期望),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

题意:

中文不解释了

分析:

假设f(n,k)表示一共有n个球星,现在还剩k个未收集到,还需购买饮料的平均次数。

那么要求的就是f(n,n)

假设我们现在推到了f(n,k),我们再买一瓶饮料,有两种可能性,一种是:我们买到了我们没有拥有的球员,那么剩下的子问题就是f(n,k-1);如果买到了我们拥有的球员,那么剩下的子问题就是f(n,k)。然而我们任意买一个瓶盖,有\frac{k}{n}的可能性买到我们没有的,有\frac{n-k}{n}的可能性买到我们已经有的。所以这道题目的递推是就是:  

f(n,k)=\frac{(n-k)f(n,k)}{n}+\frac{kf(n,k-1)}{n}+1

化简得:

f(n,k)=f(n,k-1)+\frac{k}{n}                                           

#include<cstdio>
#include<cstring>using namespace std;typedef long long ll;inline ll gcd(ll a,ll b){if(b==0) return a;else return gcd(b,a%b);
}inline int dig_len(ll a){int ans=0;while(a){ans++;a/=10;}return ans;
}int main(){int n;ll p=0,q=1,r;scanf("%d",&n);for(int i=1;i<=n;i++){p=p*i+q*n;q*=i;ll f=gcd(p,q);p/=f;q/=f;}r=p/q;p=p%q;if(p==0){printf("%lld\n",r);}else{for(int i=dig_len(r);i>0;i--){printf(" ");}printf("%lld\n",p);if(r) printf("%lld",r);for(int i=dig_len(q);i>0;i--){printf("-");}printf("\n");for(int i=dig_len(r);i>0;i--){printf(" ");}printf("%lld\n",q);}return 0;
}

 

这篇关于P1291 [SHOI2002]百事世界杯之旅 (期望)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/512665

相关文章

Spring Boot 注解探秘:HTTP 请求的魅力之旅

在SpringBoot应用开发中,处理Http请求是一项基础且重要的任务。Spring Boot通过提供一系列丰富的注解极大地简化了这一过程,使得定义请求处理器和路由变得更加直观与便捷。这些注解不仅帮助开发者清晰地定义不同类型的HTTP请求如何被处理,同时也提升了代码的可读性和维护性。 一、@RequestMapping @RequestMapping用于将特定的HTTP请求映射到特定的方法上

28.8K Star,音乐新体验,开启你的高颜值音乐之旅

Hi,骚年,我是大 G,公众号「GitHub 指北」会推荐 GitHub 上有趣有用的项目,一分钟 get 一个优秀的开源项目,挖掘开源的价值,欢迎关注。 导语 音乐是生活中不可或缺的调味品,一个好的音乐播放器能够极大地提升我们的听觉享受。今天,我要向大家推荐一个名为 YesPlayMusic 的第三方网易云音乐播放器,它不仅拥有高颜值的界面设计,还支持跨平台使用,让你的音乐体验更上一层楼

杨bob的技术之旅

杨bob今天正式入驻csdn,以后要把自己每一点滴写成文章,这也是冲高阶的毕竟之路

Midjourney 随机风格 (Style Random),开启奇幻视觉之旅

作者:老余捞鱼 原创不易,转载请标明出处及原作者。 写在前面的话:       Midjourney 最近推出了 "Style Random"(随机风格),这项功能可以让我们使用独特的随机 sref 代码创建图像,从而每次都能获得不同的美感。通过对这些功能的探索和尝试,我发现了一些很棒的风格,我很高兴能与大家分享,这样可以节省大家的时间,不用自己动手测试。在本文中,我将展示十个M

《长得太长也是错?——后端 Long 型 ID 精度丢失的“奇妙”修复之旅》

引言 在前后端分离的时代,我们的生活充满了无数的机遇与挑战——包括那些突然冒出来的让人抓狂的 Bug。今天我们要聊的,就是一个让无数开发者哭笑不得的经典问题:后端 Long 类型 ID 过长导致前端精度丢失。说到这个问题,那可真是“万恶之源”啊,谁让 JavaScript 只能安全地处理 Number.MAX_SAFE_INTEGER(也就是 9007199254740991)以内的数值呢?

SpringBoot与Minio的极速之旅:解锁文件切片上传新境界

目录 一、前言 二、对象存储(Object Storage)介绍 (1)对象存储的特点 (2)Minio 与对象存储 (3)对象存储其他存储方式的区别 (4)对象存储的应用场景 三、Minio基础介绍 (1)主要特性 (2)应用场景 (3)架构和部署 四、SringBoot集成MinIO实现切片上传 1. 引入依赖 2.配置MinIO相关配置信息 3. 配置 Min

微信公众号《GIS 数据工程:开始您的 ETL 之旅 》 文章删除及原因

微信公众号多次限制付费文章发布,不太明确其原因。我猜可能是得罪了某位大神,这倒是也不是不可能。我这说话口无遮拦,得罪几个人偶尔搞我一下也是应该的 。当然也可能是部分喜欢白嫖的网友一看我收费就不太高兴,偶尔做点小动作也是有可能的。还有就是平台可能有其它我未知的情况。反正也不猜了,这类问题纠结起来太浪费时间,所以认怂是最好的处理方式。 因此我只能改为线下购买。如有需要线下与我联系。以后

网关桥梁:modbus 转 profinet 网关中频加热机的智能融合之旅

一、项目序章:金属热处理的智慧曙光在金属锻造的辉煌舞台上,中频感应加热电源以其高效节能、精准控温的卓越才艺,成为了热处理、焊接与成型艺术中不可或缺的幕后英雄。然而,随着工业自动化的浪潮汹涌而至,如何让这位英雄融入智能工厂的广阔天地,实现远程指挥与智能操控,成为了新时代的命题。本案例,便是一场关于中频感应加热电源与工业网关携手,共绘智能工厂新蓝图的壮丽篇章。 二、系统蓝图:织就智慧互联的经纬1

概率、期望

UVA1636 决斗 Headshot #include <bits/stdc++.h>using namespace std;char s[110];int shoot, no, len;int main(){while(scanf("%s", &s)!=EOF){shoot=0;no=0;len=strlen(s);s[len]=s[0]; for(int i=0; i<len;

概率学 笔记一 - 概率 - 随机变量 - 期望 - 方差 - 标准差(也不知道会不会有二)

概率不用介绍,它的定义可以用一个公式写出: 事件发生的概率 = 事件可能发生的个数 结果的总数 事件发生的概率=\cfrac{事件可能发生的个数}{结果的总数} 事件发生的概率=结果的总数事件可能发生的个数​ 比如一副标准的 52 张的扑克牌,每张牌都是唯一的,所以,抽一张牌时,每张牌的概率都是 1/52。但是有人就会说了,A 点明明有四张,怎么会是 1/52 的概率。 这就需要精准的指出