wannafly summer camp day6
H--卡牌游戏:https://www.nowcoder.com/acm/contest/202/H
题意:卡牌的数量为无限,种类为 N ,其中 M 种稀有卡牌,问期望抽多少次能抽到 K 张稀有卡牌(其中普通卡牌可重复抽取,稀有卡牌只能被抽一次)。
解题思路:抽到第一张稀有卡牌的概率为 m/n,抽到第二张稀有卡牌的概率为 m-1/n-1,即抽到 i 张稀有卡牌的概率为 m-i+1/n-i+1,而期望次数则为 1/p。
AC代码:
#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<queue>
#include<stack>
#include<vector>using namespace std;int main()
{ios::sync_with_stdio(false);int T,n,m,k;cin>>T;for(int t = 1; t <= T; t++){cin>>n>>m>>k;double ans = 0;for(int i = 0; i < k; i++){ans += n*1.0/m;//获得 i+1 种稀有卡牌的概率为 p = m-i/n-i,期望为 1/p次抽中。 n--;m--;}printf("Case #%d: %.6f\n",t,ans); }return 0;
}
F-- 平衡二叉树:https://www.nowcoder.com/acm/contest/202/F
题意:求平衡树(任意一个节点,都满足左右子树的高度差不超过 d )的不平衡度(根节点左右子树节点数之差)的最大值。
解题思路:固定根节点的左子树为满二叉树,求满足条件的右子树最小的节点个数,ans = 左子树的节点个数 - 右子树的最小节点个数。
设 f (n) 为根节点右子树最小的节点个数.
d = 1 时,f(n) = f(n-1) + f(n-2) + 1
d = 2 时,f(n) = f(n-1) + f(n-3) +1
综上,f(n) = f(n-1) + f(n-1-d) + 1
AC 代码:
#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<queue>
#include<stack>
#include<vector>using namespace std;long long a[70],ans;
int n,d;int main()
{ios::sync_with_stdio(false);while(cin>>n>>d){a[0] = a[1] = 0,a[2] = 0;for(int i = 3; i <= 60; i++)a[i] = a[i-1] + a[ max(i-d-1, 0) ] + 1;//用 max 函数来代替 if-else 判断 i-d-1 与 0 的大小关系 ans = (1ll<<(n-1)) - 1 - a[ max(n-1-d, 0) ];//k 层满二叉树的节点个数为 pow(2,n-1)-1,左子树的节点为 (pow(2,n-1)-1-1)/2 printf("%lld\n",ans);}return 0;
}
wannafly summer camp day6相关推荐
- 2020 CCPC Wannafly Winter Camp Day6 M—自闭——模拟
链接:https://ac.nowcoder.com/acm/contest/4137/M 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524 ...
- CCPC-Wannafly Camp Day6 总结
CCPC-Wannafly Camp Day6 总结 yysy,感觉最后几题是临时加上的签到题(们). 所以,这篇总结先放最后四题. 7-11 6K. 最大权值排列 对于一个长度为 n 的数列 A,定 ...
- 阔力梯的树(2020 CCPC Wannafly Winter Camp Day2 Div.12 )dsu on tree
题解: dsu on tree dsu on tree的基本步骤就不说了 看到这题询问结点的子树问题,而且询问时离线的,首先想到的dsu on tree的这个trick. 本题的难题就是如何维护结点所 ...
- 2018 Wannafly summer camp Day3--Knight
Knight 题目描述: 有一张无限大的棋盘,你要将马从\((0,0)\)移到\((n,m)\). 每一步中,如果马在\((x,y)(x,y)\),你可以将它移动到 \((x+1,y+2)(x+1,y ...
- Wannafly summer camp
2053: Birthday 样例输入 3 3 1 2 1 2 1 2 样例输出 5 分析: 考虑费用流时把每个part拆成n个点,选择第i个点的代表为放置i块蛋糕和(i - 1)块蛋糕的时间差,这个 ...
- 2019 wannafly winter camp day5-8代码库
目录 day5 5H div2 Nested Tree (树形dp) 5F div2 Kropki (状压dp) 5J div1 Special Judge (计算几何) 5I div1 Sortin ...
- Wannafly Winter Camp Day 3 G排列(贪心)
思路来源 jls%%% 题解 赛后补队友AC的水题可还行 最先出现的单减子序列对应的位置,一定是那些最小值的位置 先把那些放满,剩下的贪心选使字典序最小,就把剩下的从前到后扫一遍从小到大放 代码 #i ...
- 2020 CCPC Wannafly Winter Camp Day3 部分题解(ACEFG)
查看题目 A 黑色气球 题意: n个气球,每个气球高度为正整数.给你每两个气球之间的高度和,还原出所有气球的高度,保证答案唯一. 解题思路: 签到题,因为高度的范围不大,直接枚举第一个气球的高度,检测 ...
- 2020 CCPC Wannafly Winter Camp Day2 Div.12——A 托米的字符串【构造、数学】
题目传送门 题目描述 托米有一个字符串,他经常拿出来玩.这天在英语课上,他学习了元音字母 a , e , i , o , u {a,e,i,o,u} a,e,i,o,u 以及半元音 y {y} y . ...
最新文章
- java更新blob字段的值_对一个BLOB字段如何用update 来更新?? (100分)
- wangEditor 菜单栏随页面滚动位置改变(吸顶)问题解决
- wps的高亮怎么用_怎样在WPS上实现代码语法高亮
- 去中心化交易所前路明朗,基于EOS的去中心化交易所力拔头筹
- ftp连接oracle服务器,使用SSL加密连接FTP - 架建SSL安全加密的FTP服务器(图)_服务器应用_Linux公社-Linux系统门户网站...
- Oracle dataguard一主两备环境搭建
- 虚拟货币公有链项目集体爆发,AE超过历史最高点
- qq登陆inc.php,登陆验证 qq登陆验证 php 登陆验证
- socket编程-阻塞和非阻塞
- xv6 System Call
- 前端使用js压缩图片上传
- YUV格式讲解并使用ffmpeg生产YUV文件
- mysql 中 字典表设计_数据库怎么设计字典表
- 只要方向正确,路远不是事
- 光耦主要参数和高速光耦如何选型
- java记忆翻牌,原生JS实现记忆翻牌游戏
- c++输入回车结束循环_C++ cin如何输入回车停止
- 如何自学编写手游脚本_自学如何编写代码时应做的5件事
- RN + Flutter
- 彻底搞懂弹性布局flex
热门文章
- Top 7 PHP Security Blunders
- 【渝粤教育】广东开放大学 搜索引擎营销(SEM) 形成性考核 (47)
- Intel8086处理器使用NASM汇编语言实现操作系统04-实模式-屏幕显示不定长度的字符串(cmp/je)
- Linux CentOS 中安装 Tomcat(四)
- C语言:关键字---struct(声明结构体类型)
- 简练软考知识点整理-创建工作分解结构过程
- 银河麒麟V10操控系统Qt安装
- DAY 2 基础查询与排序
- 保护水资源公益网站html,保护水资源公益广告策划书
- lol登入服务器显示证书,登录LOL提示安全证书不可用怎么办