2023NOIP A层联测25 T2 游戏
2023NOIP A层联测25 T2 游戏
优秀且新颖的期望题。
思路
分析问题,由于双方都是最优策略,所以可以说学生知道老师会选择那些教室设置概率(概率设置好就不能改变),老师也知道学生会怎样选择教室(不是知道一定会去那个)。
设老师选择的集合是 \(S\)。
那么老师在学生不清空的情况下,老师的期望为 \(\sum_{i\in S} p_ia_i\)(\(p_i\) 是概率)。
学生知道每一项 \(i\) 的贡献,所以由于学生要使老师的期望最小,那么学生肯定选 \(\max(p_ia_i)\)。
于是答案为 \(\sum_{i\in S} p_ia_i-\max(p_ia_i)\)。
对于最大的那一项 \(p_ia_i\) 来说,由于他们肯定会被选走,所以说老师不妨把 \(p_i\) 改小一点,多出来的概率分给其他的数,虽然总和减小了,但被减掉的部分也减小了,而且不会被减掉的部分增加了,所以答案将获得最优。
那么最好情况下,我们要使得 \(\sum_{i \in S} p_i=1\) 且对于任意 \(i\) 而言 \(p_ia_i\) 相等。
可以构造
\]
这个 \(p_k\) 是符合条件的。
现在问题变为要怎样是答案最大。
答案最大要是 \(p_i\) 最小,\(p_i\) 最小要使 \(\sum_{i \in S} \frac{1}{a_i}\) 最小,也就是使 \(\sum a_i\) 最大。
设集合 \(S\) 有 \(m\) 个数,那么取最大 \(m\) 个即可。
而且这样答案合式可化为:
\]
对答案排序后,枚举 \(m\) 即可。
CODE
#include<bits/stdc++.h>
using namespace std;
int n;
int a[55];
double ans,sum;
bool cmp(int a,int b){return a>b;}
int main()
{
scanf("%d",&n);
for(int i=1;i<=n;i++) scanf("%d",&a[i]);
sort(a+1,a+n+1,cmp);
for(int i=1;i<=n;i++) sum+=1.0/a[i],ans=max(ans,(i-1)/sum);
printf("%.12lf",ans);
}
2023NOIP A层联测25 T2 游戏的更多相关文章
- Valve开源了Direct3D到OpenGL的转译层,方便开发者迁移游戏到Linux(面向游戏玩家的六款最佳 Linux 发行版)
Valve开源了Direct3D到OpenGL的转译层,方便开发者迁移游戏到Linux:https://github.com/ValveSoftware/ToGL Valve SteamBox主机系统 ...
- Wannafly挑战赛23 T2游戏 SG函数
哎,被卡科技了,想了三个小时,最后还是大佬给我说是\(SG\)函数. \(SG\)函数,用起来很简单,证明呢?(不可能的,这辈子都是不可能的) \(SG\)定理 游戏的\(SG\)函数就是各个子游戏的 ...
- HTML5学习+javascript学习:打飞机游戏简介以及Model层
本着好记性不如烂博客以及分享成功的喜悦和分享失败的苦楚,今天我来分享下一个练手项目:打飞机游戏~从小就自己想做游戏,可是一直没有机会.HTML5给了我们这个平台,这个平台可以有很多以前想都不敢想的东西 ...
- 转:高层游戏引擎——基于OGRE所实现的高层游戏引擎框架
高层游戏引擎——基于OGRE所实现的高层游戏引擎框架 这是意念自己的毕业论文,在一个具体的实践之中,意念主要负责的是物件和GUI之外的其他游戏系统.意念才学疏陋,望众位前辈不吝赐教.由于代码质量不高. ...
- cocos2d-x中的导演、场景、层和精灵
场景(Scenes) 场景在cocos2d-x中是CCScene类实现的,是应用程序流中独立的一部分.一个cocos2dx应用程序可以有许多场景,但是在某一时刻,只有一个场景在运行. 比如,你有一个游 ...
- 游戏行业DDoS攻击解决方案
行业综述 根据全球游戏和全球移动互联网行业第三方分析机构Newzoo的数据显示:2017年上半年,中国以275亿美元的游戏市场收入超过美国和日本,成为全球榜首. 游戏行业的快速发展.高额的攻击利润.日 ...
- 阿里云:游戏行业DDoS攻击解决方案
转自:http://www.gamelook.com.cn/2018/01/319420 根据全球游戏和全球移动互联网行业第三方分析机构Newzoo的数据显示:2017年上半年,中国以275亿美元的游 ...
- coco2d-x游戏逻辑结构
在Cocos2d-x中开发游戏的主要逻辑和结构是:先创建场景,在场景上添加一层或多层,然后可以在指定层上添加精灵.菜单.文字等,可以为精灵.文字执行某个动作(或者移动),检测玩家触屏事件,开启任务调度 ...
- cocos2d-x游戏引擎核心之三——主循环和定时器
一.游戏主循环 在介绍游戏基本概念的时候,我们曾介绍了场景.层.精灵等游戏元素,但我们却故意避开了另一个同样重要的概念,那就是游戏主循环,这是因为 Cocos2d 已经为我们隐藏了游戏主循环的实现.读 ...
- Cocos2d-x3.0游戏实例之《别救我》第八篇——TiledMap实现关卡编辑器
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/musicvs/article/details/25368273 好吧.我真心全然搞不懂.我如今仅仅只 ...
随机推荐
- 什么是 API ?
一.API 的定义:数据共享模式定义 4 大种类 作为互联网从业人员,API 这个词我耳朵都听起茧子了,那么 API 究竟是什么呢? API 即应用程序接口(API:Application Progr ...
- Go channel 介绍
Go 语言(Golang)中的 chan 是通道(channel)的缩写,用于在不同的 goroutine 之间进行通信.通道允许你在 goroutine 之间传递数据,从而实现同步和共享内存.下面是 ...
- 【Mac + Appium + Java1.8(一)】之Android自动化环境安装配置以及IDEA配置(附录扩展Selenium+Java自动化)
配置环境: MacOS:10.13.6 java:1.8 IntelliJ IDEA:2018.3 Android SDK:25 Appium:1.9.1 Appium-desktop:1.7.1 j ...
- vue echarts map 中国地图显示不出来
测试区忽然无法显示中国地图,所以对比了一下测试区与开发环境中echarts版本的区别 测试区echarts版本为 5.4.2 开发环境为5.0.2 所以将package.json中的 "ec ...
- 【YashanDB数据库】VMware虚拟机使用默认安装,在掉电之后数据库无法启动
问题现象 客户使用VMware虚拟机使用默认安装,部署YashanDB个人版,在掉电之后无法启动 操作系统: Virtualization: VMware Operating System: Cent ...
- webpack系列-externals配置使用(CDN方式引入JS)
如果需要引用一个库,但是又不想让webpack打包(减少打包的时间),并且又不影响我们在程序中以CMD.AMD或者window/global全局等方式进行使用(一般都以import方式引用使用),那就 ...
- LinkedHashMap原理详解—从LRU缓存机制说起
写在前面 从一道Leetcode题目说起 首先,来看一下Leetcode里面的一道经典题目:146.LRU缓存机制,题目描述如下: 请你设计并实现一个满足 LRU (最近最少使用) 缓存 约束的数据结 ...
- Java——图片文件位于 bin 目录下,下载新图片会导致应用程序重启
当应用程序在运行时需要加载图片文件时,如果图片文件位于 bin 目录下,下载新图片会导致应用程序重启,这是因为 Java 应用程序在加载资源时通常会遵循以下机制: 类加载器: Java 应用程序使用类 ...
- 关于AutoCAD反复弹窗Nonvalid Software Detected的解决办法
事件起因: 客户安装的 CAD 2020 频繁弹窗Nonvalid Software Detected,报错内容:YOUR ACCESS IS NOW BLOCKED 解决办法: 在文件资源管理器 ...
- KASAN 中kasan_multi_shot 的作用
kasan_multi_shot 是 Linux 内核配置选项之一,与 Kernel Address Sanitizer (KASAN) 相关.KASAN 是一种内核内存错误检测工具,能够检测内核代码 ...