牛客竞赛题库(NC232257)

#include<stdio.h>

int main()
{
    int n;
    scanf("%d", &n);
    if (n % 2 == 0)
    {
        printf("%d\n", n / 2);
    }
    else
    {
        printf("%d %d\n", n / 2, n / 2 + 1);
    }
    return 0;
}

这道题涉及到我们高中的二项式分布,要轻松做出,需要了解此知识点,我们就先用二项式分布来讲解此题。

在这两人的游戏中,一共n局游戏,每局游戏Alice获胜的概率p=1/2,失败的概率为1-p=1/2,设Alice获胜的局数为随机变量X,那么X服从参数为n和p=1/2的二项式分布,即X~B(n,1/2)。符合二项式定义,也就是n次独立重复试验,每次试验Alice获胜概率为1/2。

下面我用纸写的,打字不方便。

我写这些并非小题大做,这题凭直觉也可以做出来,是因为(1/2)^n这个值是固定的,只考虑组合数就行。但下次概率变为1/3又该如何应对,所以要懂得每道题的原理,我们才能从容应对类似的题目以及变形题目。

解释一下代码中n为奇数中的输出(即第13行),为何不是(n-1)/2 , (n+1)/2 ?

因为在这个代码中n/2是取整数,没有四舍五入,直接去掉小数点后面的数字,故直接可以n/2,n/2+1。

牛客竞赛题库(C语言) 文章被收录于专栏

这是我对题库写的代码以及分析,由易到难,我会坚持把它写完,可能有些粗糙,专栏免费,不想看可以划走。

全部评论

相关推荐

03-25 11:39
已编辑
门头沟学院 前端工程师
雪球一二面是一起的,三面和HR面一起一面(55min)1.&nbsp;自我介绍、项目、实习2.&nbsp;基本数据类型、引用数据类型,判断数据类型的方式,instanceof原理3.&nbsp;详细说说symbol用法,有了对象为什么还要有map4.&nbsp;vue2与vue3的区别5.&nbsp;Promise,async/await原理,事件循环6.&nbsp;手撕:Promise.all7.&nbsp;浏览器事件监听机制,可以控制冒泡和捕获吗,具体怎么控制;8.&nbsp;如果一个列表有成千上万项,每个项都有点击事件如何优化9.&nbsp;浏览器缓存,输入URL到展示页面做了什么10.&nbsp;详细说说DNS解析,在本地环境下走缓存的顺序,配置过本地host吗,主要解决什么问题?11.&nbsp;http状态码304什么条件下触发12.&nbsp;说说数组的方法,知道copyWithin吗(不知道)13.&nbsp;css选择器优先级14.&nbsp;了解BFC吗15.&nbsp;flex用的多吗,flex:1是什么意思16.&nbsp;手撕:防抖17.&nbsp;手撕:斐波那契数列,尾递归优化,再写个迭代模式的二面(40min)1.&nbsp;展示项目,探讨低代码应用场景2.&nbsp;实习期间做了什么,帮助最大的是什么3.&nbsp;大学期间做过什么事情帮助最大(网安俱乐部,Web方向)4.&nbsp;详细说一个你知道的Web安全的点,怎么避免5.&nbsp;竞赛期间感受最深的是什么6.&nbsp;除了技术,还有别的爱好吗,台球打得怎么样7.&nbsp;还有投递别的城市吗,现在有offer吗聊天过程中涉及到,vue2和vue3区别,nexttick(),echarts和d3js三面(25min)+&nbsp;HR面(40min)主管面主要问项目+展示,HR面主要是谈经历就不细写了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务