博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hdu 4503 找全是朋友或全不是朋友
阅读量:6326 次
发布时间:2019-06-22

本文共 1267 字,大约阅读时间需要 4 分钟。

湫湫系列故事——植树节

Time Limit: 1000/500 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others)

Total Submission(s): 935    Accepted Submission(s): 556

Problem Description
  今天是一年一度的植树节,腾讯幼儿园要求每个老师在班里选出几个小朋友一起去野外种植小树苗,根据学校的整体安排,湫湫老师的班里要选出3个小朋友。  已知湫湫的班里共有n个孩子,每个孩子有Bi个朋友(i从1到n),且朋友关系是相互的,如果a小朋友和b小朋友是朋友,那么b小朋友和a小朋友也一定是好朋友。为了选择的公平性,湫湫老师会随机抽取3个小朋友出来(每个人被抽到的概率相同),但是她很希望这3个小朋友之间的关系完全相同,湫湫老师想请你帮她算算抽到的3个小朋友正好关系相同的概率是多少?
  PS. 关系相同就是指要么3个人互相是好朋友,要么3个人互相都不是好朋友。
 

Input
输入数据第一行是一个整数T(1<=T<=1000),表示输入数据的组数;每组数据的第一行是一正整数n表示孩子的总数(2<n<=1000),第二行有n个数Bi (i从1到n),分别代表每个小朋友的朋友的个数。
 

Output
对于每组数据,请输出抽到的3个小朋友关系相同的概率,结果保留3位小数。
 

Sample Input
1 5 3 3 3 3 4
 

Sample Output
0.400

 

分析:

互相为朋友关系或者是彼此都没有朋友关系,也就是说三人之间有三条边或者是有零条边都是称为相同关系的。

第i个点 的朋友有 P[i] 个, 我们选择这样的策略来选出3个点: 第i个点为第1个点 ,然后 从p[i] 个点中任意选一个点 作为第二个点 , 然后从 剩下的 n-1-p[i]点中 作为第三个点。 共有1*p[i]*(n-1-p[i]) 种方法, 然后对所有的 i 的种类求和 ,就是  不同关系的种类。 但是,每种三点情况 策略重复了2次,故我们需要除2。 

 

1 #include
2 #include
3 #include
4 #include
5 #include
6 #include
7 8 using namespace std; 9 10 int main()11 {12 int t;13 scanf("%d",&t);14 while(t--)15 {16 int n,temp;17 double ans=0.0,mu;18 scanf("%d",&n);19 for(int i=0;i

 

转载于:https://www.cnblogs.com/zn505119020/p/3577084.html

你可能感兴趣的文章
java.io.IOException: Cannot find any registered HttpDestinationFactory from the Bus.
查看>>
071——VUE中vuex之使用getters计算每一件购物车中商品的总价
查看>>
Hibernate5配置与使用具体解释
查看>>
Android HAL层与Linux Kernel层驱动开发简介
查看>>
Remove Duplicates from Sorted List II
查看>>
bazel编译tensorflow 生成libtensorflow_inference.so 和 libandroid_tensorflow_inference_java.jar
查看>>
JAVA微信扫码支付模式二功能实现完整例子
查看>>
myeclipse2014安装jad反编译插件
查看>>
方法区和常量池
查看>>
如何编译和安装libevent【转】
查看>>
spring-boot3
查看>>
BZOJ5177 : [Jsoi2013]贪心的导游
查看>>
使用webpack构建本地服务器
查看>>
Hive学习之路 (三)Hive元数据信息对应MySQL数据库表
查看>>
用c#语言编写银行利率
查看>>
java.sql.SQLException: ORA-00932: 数据类型不一致: 应为 -, 但却获得 CLOB
查看>>
Spring配置文件<context:property-placeholder>标签使用漫谈
查看>>
Objective-c调用Swift
查看>>
jQuery学习笔记
查看>>
2018第18周总结
查看>>