An integer sequence with length nn, denoted by a_1,a_2,\cdots,a_na1​,a2​,⋯,an​, is generated randomly, and the probability of being 1,2,\cdots,n1,2,⋯,n are all \frac{1}{n}n1​ for each a_iai​ (i=1,2,\cdots,n)(i=1,2,⋯,n).

Your task is to calculate the expected number of permutations p_1,p_2,\cdots,p_np1​,p2​,⋯,pn​ from 11 to nn such that p_i \le a_ipi​≤ai​ holds for each i=1,2,\cdots,ni=1,2,⋯,n.

Input

The only line contains an integer nn (1 \leq n \leq 50)(1≤n≤50).

Output

Output the expected number of permutations satisfying the condition. Your answer is acceptable if its absolute or relative error does not exceed 10^{-9}10−9.

Formally speaking, suppose that your output is xx and the jury's answer is yy. Your output is accepted if and only if \frac{|x - y|}{\max(1, |y|)} \leq 10^{-9}max(1,∣y∣)∣x−y∣​≤10−9.

Inputcopy Outputcopy
2
1.000000000000

Sample 2

Inputcopy Outputcopy
3
1.333333333333

Sample 3

Inputcopy Outputcopy
50
104147662762941310907813025277584020848013430.758061352192

题意:长度为n的a数组中,每个数是1,2,3,4..n的概率都是1/n,对于全排列的p数组(如1,2,3。1,3,2。2,1,3。2,3,1。3,1,2。3,2,1),全部下标i都成立的pi<=ai的数学期望是多少。

题意比较难懂,就是所有全排列的p数组答案+起来。p数组为1,2时,答案是2/4,因为a数组有1,2。2,2可以,两个的概率是2/4=0.5;

p数组为2,1时,可以算出答案也是0.5,最后数学期望和就是1.000000。

思路:答案简单算算可以知道为:(n!*n!)/n^n。没有公式直接算即可。

,他的意思应该是前10位对就ok,所以c++的long double和py直接小数计算都可

 代码:

#include<bits/stdc++.h>
using namespace std;
#define fo(a,b) for(int i=a;i<=b;i++)
#define inf 0x3f3f3f3f
#define dou long double
#define M 100005
dou res=1,n;
int main(){cin>>n;for(dou i=1;i<=n;i++){res*=i*i/n;}printf("%.15Lf\n",res);return 0;
}

py代码:

n=(int)(input())
res=1
for i in range(1,n+1):res*=1.0/n*i*i
print(res)

20年ICPC澳门站L - Random Permutation相关推荐

  1. CF-GYM 103119 L. Random Permutation

    原题链接:Problem - L - Codeforces 题面: An integer sequence with length nn, denoted by a1,a2,⋯,ana1,a2,⋯,a ...

  2. 【超好懂的比赛题解】2020ICPC澳门站 个人题解

    title : 2021ICPC澳门站 个人题解 date : 2022-10-6 tags : ACM,题解,练习记录 author : Linno 2020ICPC澳门站 个人题解 题目链接:ht ...

  3. 21年icpc沈阳站记录

    icpc沈阳站记录 2021.11.22凌晨 从昨晚紧张到辗转反侧,虽然早就做好了打铁的心理准备,但待到比赛最后一刻两道铜牌题还没出时,满脑子的不甘心.当然最后肯定铁了395/576. 11.21也就 ...

  4. 2022 ICPC 西安站 赛后总结

      喜提铜牌一枚.   不用担心说俺们澳门站牌子水了,还有西安(虽然西安也有点水,不是南京.上海那种卷站,当天还有CCPC分流).   不过铜牌在应聘的时候还是不太够看,银牌都是标配了.   好了言归 ...

  5. 2018 ICPC 沈阳站

    细胞色素训练3 排名:100/193 2018年ICPC沈阳站,学长在这里拿金了.听学长说开始时候很快的出了两题,排名第四,是可以进final的,然后一直没过题,直到最后封榜时候连过两题,金牌最后一名 ...

  6. ZOJ 4062 Plants vs. Zombies 2018 ICPC 青岛站 E Plants vs. Zombies

    ZOJ 4062 二分 哎,二分,二分,二分,我咋就没想到啊,在一篇博客上看到一句话: 一般此类最小值最大问题都是二分,此题显然也是可以二分植物的高度的. 博客链接:https://www.cnblo ...

  7. 2021 ICPC 沈阳站 D题 Journey to Un‘Goro (打表+找规律)

    2021 ICPC 沈阳站 D.Journey to Un'Goro [链接][http://codeforces.com/gym/103202/problem/D](http://codeforce ...

  8. np.random.permutation

    np.random.permutation np.random.permutation():随机排列序列. 例1:对0-5之间的序列进行随机排序 例2:对一个list进行随机排序 多维度的咋回事? 来 ...

  9. numpy笔记:random.permutation

    作用是随机排列序列 1 参数为一个数字 表示对range(n)的序列进行排序[如果n是负数的话,返回一个空的list] import numpy as np print(np.random.permu ...

最新文章

  1. 省市县三级级联(模块化开发)
  2. WebRTC内置debug工具,详细参数解读
  3. python能用来做什么有意思的事情-用 Python 自动化办公能做到哪些有趣或有用的事情?...
  4. 织女的红线_JAVA
  5. iOS开发之Objective-C与JavaScript的交互
  6. 【转】介绍设置Session失效的几种方法
  7. C# Global.asax.cs 定时任务
  8. vuex保存用户信息_Vuex状态管理
  9. spring5企业级开发实战 pdf_终于总结出Spring全家桶+微服务设计模式+Netty+MySQL调优PDF...
  10. MySQL8.0内存相关参数介绍
  11. lnmp 下php升级,lnmp nginx和php升级方法
  12. 【超直白】算法:斐波那契数列
  13. js学习之SublimeText编辑器
  14. redis 一主二从三哨兵
  15. JS获取DropDownList的value值与text值
  16. 一文读懂量化系统接入及相关平台
  17. JointJs快速入门
  18. jquery动态创建表格
  19. 我爱淘冲刺阶段站立会议2每天任务5
  20. 产品经理需要了解的概念【职位篇】

热门文章

  1. 翻译Guzzle摘要
  2. pr使用中C盘空间变小
  3. 爬虫日记(6):beautifulsoup的基本使用2
  4. 典藏推荐:《乱世佳人》(《飘》)
  5. C语言试题106之有一对兔子,从出生后第 3 个月起每个月都生一对兔子,小兔子长到第三个月 后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
  6. 基于中文语义词典的语义相关度量方法比较研究
  7. android baseview,Android BaseAdapter:在getView()重新输入时conver...
  8. mongo从开始到安装以及遇到的问题
  9. 编写一个购物车程序,实现在界面中以列表的形式显示购物车的商品信息,商品信息包括商品名称、价格和数量功能,并能够对购物车中的商品信息进行增删改查
  10. 人脸识别之DeepID模型