【长郡NOIP2014模拟10.22】搞笑的代码

2024-05-29 03:08

本文主要是介绍【长郡NOIP2014模拟10.22】搞笑的代码,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Description

在OI界存在着一位传奇选手——QQ,他总是以风格迥异的搞笑代码受世人围观
某次某道题目的输入是一个排列,他使用了以下伪代码来生成数据
while 序列长度

Input

一个正整数n,表示需要生成一个n排列

Output

一个数表示期望随机次数,保留整数

Sample Input

4

Sample Output

8(.333333…)
【友情提示】
输出样例的括号里表示答案的小数部分,但实际丌要求输出
数学期望=sigma(概率×权值),本题中为期望随机次数=sigma(概率×随机次数)

Data Constraint

30%数据满足n≤3
80%数据满足n≤10^7
100%数据满足n≤2^31

Solution

设x为当前到第i位取到可以取的值的期望次数
设共有n个数(即输入的n)

x=ni+1n+i1n(x+1)

化简得
x=nni+1=n1i

用最右边的等式,把n提出来,答案为

ni=1n1i

ni=11i 每隔 107 打个表,然后暴力就行了

Code

#include<cstdio>
#define ll long long
#define fo(i,a,b) for(ll i=a;i<=b;i++)
#define db double
#define N 10000010
using namespace std;
db a[215]={0,
16.695311365860,
17.388458521420,
17.793923621195,
18.081605689480,
18.304749238294,
18.487070793421,
18.641221472058,
18.774752863789,
18.892535898751,
18.997896413853,
19.093206593203,
19.180217969814,
19.260260677167,
19.334368649046,
19.403361520295,
19.467900041224,
19.528524662856,
19.585683076533,
19.639750297657,
19.691043591913,
19.739833755963,
19.786353771490,
19.830805533962,
19.873365148290,
19.914187142727,
19.953407855803,
19.991148183715,
20.027515827820,
20.062607147570,
20.096508699188,
20.129298521957,
20.161047220221,
20.191818878841,
20.221671841946,
20.250659378777,
20.278830255704,
20.306229229854,
20.332897476901,
20.358872963271,
20.384190771223,
20.408883383783,
20.432980935333,
20.456511432715,
20.479500950913,
20.501973806740,
20.523952713435,
20.545458918633,
20.566512327808,
20.587131614990,
20.607334322287,
20.627136949563,
20.646555035402,
20.665603230354,
20.684295363349,
20.702644502000,
20.720663007487,
20.738362584570,
20.755754327267,
20.772848760612,
20.789655878914,
20.806185180852,
20.822445701710,
20.838446043044,
20.854194399999,
20.869698586523,
20.884966058643,
20.900003935996,
20.914819021770,
20.929417821180,
20.943806558622,
20.957991193604,
20.971977435569,
20.985770757692,
20.999376409738,
21.012799430062,
21.026044656803,
21.039116738362,
21.052020143189,
21.064759168959,
21.077337951158,
21.089760471148,
21.102030563733,
21.114151924258,
21.126128115297,
21.137962572937,
21.149658612694,
21.161219435088,
21.172648130905,
21.183947686153,
21.195120986744,
21.206170822925,
21.217099893451,
21.227910809550,
21.238606098661,
21.249188207985,
21.259659507847,
21.270022294877,
21.280278795039,
21.290431166498,
21.300481502347,
21.310431833195,
21.320284129633,
21.330040304574,
21.339702215481,
21.349271666492,
21.358750410442,
21.368140150788,
21.377442543446,
21.386659198546,
21.395791682106,
21.404841517621,
21.413810187600,
21.422699135013,
21.431509764692,
21.440243444657,
21.448901507396,
21.457485251084,
21.465995940748,
21.474434809390,
21.482803059057,
21.491101861869,
21.499332361002,
21.507495671638,
21.515592881867,
21.523625053561,
21.531593223207,
21.539498402711,
21.547341580169,
21.555123720608,
21.562845766699,
21.570508639442,
21.578113238824,
21.585660444456,
21.593151116183,
21.600586094668,
21.607966201962,
21.615292242052,
21.622565001378,
21.629785249349,
21.636953738825,
21.644071206592,
21.651138373812,
21.658155946468,
21.665124615782,
21.672045058624,
21.678917937910,
21.685743902978,
21.692523589961,
21.699257622140,
21.705946610288,
21.712591153005,
21.719191837034,
21.725749237578,
21.732263918597,
21.738736433101,
21.745167323429,
21.751557121526,
21.757906349202,
21.764215518394,
21.770485131405,
21.776715681154,
21.782907651400,
21.789061516973,
21.795177743988,
21.801256790063,
21.807299104517,
21.813305128575,
21.819275295560,
21.825210031078,
21.831109753203,
21.836974872654,
21.842805792963,
21.848602910646,
21.854366615361,
21.860097290068,
21.865795311181,
21.871461048716,
21.877094866432,
21.882697121979,
21.888268167027,
21.893808347401,
21.899318003211,
21.904797468974,
21.910247073740,
21.915667141208,
21.921057989841,
21.926419932981,
21.931753278955,
21.937058331184,
21.942335388283,
21.947584744168,
21.952806688148,
21.958001505023,
21.963169475181,
21.968310874680,
21.973425975345,
21.978515044851,
21.983578346807,
21.988616140835,
21.993628682658,
21.998616224168,
22.003579013508,
22.008517295148,
22.013431309949,
22.018321295242,
22.023187484892,
22.028030109367,
22.032849395801,
22.037645568064,
22.042418846815,
22.047169449573,
22.051897590768,
22.056603481804,
22.061287331115};
int main()
{ll n,n1;scanf("%lld",&n);n1=n/10000000;ll ans1=(ll)a[n1];db ans=a[n1]-ans1;fo(i,n1*10000000+1,n){ans+=1.0/i;if(ans>1) ans--,ans1++;}printf("%.0lf",(ans+ans1)*(db)n);
}

这篇关于【长郡NOIP2014模拟10.22】搞笑的代码的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

使用Redis实现会话管理的示例代码

《使用Redis实现会话管理的示例代码》文章介绍了如何使用Redis实现会话管理,包括会话的创建、读取、更新和删除操作,通过设置会话超时时间并重置,可以确保会话在用户持续活动期间不会过期,此外,展示了... 目录1. 会话管理的基本概念2. 使用Redis实现会话管理2.1 引入依赖2.2 会话管理基本操作

mybatis-plus分表实现案例(附示例代码)

《mybatis-plus分表实现案例(附示例代码)》MyBatis-Plus是一个MyBatis的增强工具,在MyBatis的基础上只做增强不做改变,为简化开发、提高效率而生,:本文主要介绍my... 目录文档说明数据库水平分表思路1. 为什么要水平分表2. 核心设计要点3.基于数据库水平分表注意事项示例

Nginx服务器部署详细代码实例

《Nginx服务器部署详细代码实例》Nginx是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务,:本文主要介绍Nginx服务器部署的相关资料,文中通过代码... 目录Nginx 服务器SSL/TLS 配置动态脚本反向代理总结Nginx 服务器Nginx是一个‌高性

HTML5的input标签的`type`属性值详解和代码示例

《HTML5的input标签的`type`属性值详解和代码示例》HTML5的`input`标签提供了多种`type`属性值,用于创建不同类型的输入控件,满足用户输入的多样化需求,从文本输入、密码输入、... 目录一、引言二、文本类输入类型2.1 text2.2 password2.3 textarea(严格

JAVA项目swing转javafx语法规则以及示例代码

《JAVA项目swing转javafx语法规则以及示例代码》:本文主要介绍JAVA项目swing转javafx语法规则以及示例代码的相关资料,文中详细讲解了主类继承、窗口创建、布局管理、控件替换、... 目录最常用的“一行换一行”速查表(直接全局替换)实际转换示例(JFramejs → JavaFX)迁移建

Go异常处理、泛型和文件操作实例代码

《Go异常处理、泛型和文件操作实例代码》Go语言的异常处理机制与传统的面向对象语言(如Java、C#)所使用的try-catch结构有所不同,它采用了自己独特的设计理念和方法,:本文主要介绍Go异... 目录一:异常处理常见的异常处理向上抛中断程序恢复程序二:泛型泛型函数泛型结构体泛型切片泛型 map三:文

MyBatis中的两种参数传递类型详解(示例代码)

《MyBatis中的两种参数传递类型详解(示例代码)》文章介绍了MyBatis中传递多个参数的两种方式,使用Map和使用@Param注解或封装POJO,Map方式适用于动态、不固定的参数,但可读性和安... 目录✅ android方式一:使用Map<String, Object>✅ 方式二:使用@Param

SpringBoot实现图形验证码的示例代码

《SpringBoot实现图形验证码的示例代码》验证码的实现方式有很多,可以由前端实现,也可以由后端进行实现,也有很多的插件和工具包可以使用,在这里,我们使用Hutool提供的小工具实现,本文介绍Sp... 目录项目创建前端代码实现约定前后端交互接口需求分析接口定义Hutool工具实现服务器端代码引入依赖获

利用Python在万圣节实现比心弹窗告白代码

《利用Python在万圣节实现比心弹窗告白代码》:本文主要介绍关于利用Python在万圣节实现比心弹窗告白代码的相关资料,每个弹窗会显示一条温馨提示,程序通过参数方程绘制爱心形状,并使用多线程技术... 目录前言效果预览要点1. 爱心曲线方程2. 显示温馨弹窗函数(详细拆解)2.1 函数定义和延迟机制2.2

Springmvc常用的注解代码示例

《Springmvc常用的注解代码示例》本文介绍了SpringMVC中常用的控制器和请求映射注解,包括@Controller、@RequestMapping等,以及请求参数绑定注解,如@Request... 目录一、控制器与请求映射注解二、请求参数绑定注解三、其他常用注解(扩展)四、注解使用注意事项一、控制