鱼C论坛

 找回密码
 立即注册
查看: 3269|回复: 27

[已解决]【C++板块提升计划】梦想护卫舰 第22关 组合数计算

[复制链接]
发表于 2023-2-11 08:58:20 | 显示全部楼层 |阅读模式
本帖最后由 zhangjinxuan 于 2023-2-12 13:39 编辑

上一关:解决题目


梦想护卫舰 第22关 组合数计算


外星人终于被你们的聪明才智打败了,于是把 zhangjinxuan 放了出来

你们非常高兴,准备带上之前获得的十万鱼币宝箱继续起航

可是……

船被破坏了,被破坏成成了 m 个零件……

但你们数了数,发现这里一共有 n 个零件,所以你们想知道,你们要最多尝试多少次,才能拼成整个船呢(不考虑零件的先后顺序,且零件互不相同)?

因为答案可能很大,所以请你对 1e9 + 7 取余

换句话说,请求出 C(n,m) % (1e9 + 7) = ?

提示:C(n,m) = C(n, m) = n! / (n - m)! / m!,在这里,n! 为 n 的阶乘

另外,我们还规定,当 n > m, C(n, m) = 0

输入格式
一行两个数字,分别表示 n, m

输出格式
一行一个数字,表示 C(n,m) % (1e9 + 7) 的值

输入样例1
4 2

输出样例1
6

输入样例2
99999 47297

输出样例2
286996488

数据范围
对于所有数据,保证1 <= n, m <= 1e6

小彩蛋
游客,如果您要查看本帖隐藏内容请回复
[/hide]

                               
登录/注册后可看大图


答案与解析
游客,如果您要查看本帖隐藏内容请回复
[/hide]

最佳战士排行榜
第一名第二名第三名
名字
链接
语言
效率
代码得分
综合得分
奖励5鱼币5荣誉+“最佳答案”3鱼币3荣誉+"2鱼币2荣誉

/*综合评分会参照运行时间(代码效率),代码长度,代码可读性,解题思路,代码得分等来进行评分*/

我们一起来 Hack
从本关起,我们将在部分关卡设置 ”一起来 Hack 活动“

1. 什么是 Hack?
简单来说就是,出一个数据,满足数据合法的前提下,让某个已经 AC 的代码 WA,这就叫 Hack
2. 为什么要举办?
为了更加能提升练的作用,让我们出题人更加仔细认真,提升 ”梦想护卫舰“ 的质量,所以我们举办 “一起来 Hack" 活动
3. 如何 Hack?
这里的 Hack 不仅指 Hack 标程,还能 Hack 题目/题解,例如这个题目/题解你觉得有问题/争议,你也可以来 Hack
4. Hack 的奖励有哪些?
具体见 "Hack 规则"

名字额外减小tommyyu
Hack 类型指出题目错误Hack 程序(细节问题)
是否证实
链接戳我戳我
奖励1鱼币1荣誉2鱼币2荣誉



答题/奖励规则
1. 不能抄题解,否则无奖励,可能还会扣分;
2. 当您遇到问题时,您可以回贴提问,我会为您解答
3. 提供完整能得分的题解,均有奖励
4. 因为额度原因,部分鱼油可能下一天才能奖励。

Hack 规则
1. Hack 经证实均有奖励,你在 Hack 时得提供完整证据、证明;
2. Hack 分为三类奖励,指出题目 Bug 奖励 1 ~ 3 的鱼币荣誉,指出标程问题(细节)奖励 2 ~ 5 的鱼币荣誉,指出标程问题(重)奖励 5 ~ 10 的鱼币荣誉
3. 奖励上限为 3
游客,如果您要查看本帖隐藏内容请回复



                               
登录/注册后可看大图


下一关:待更新

创作不易,如果你喜欢,别忘了分、顶


本关满意度调查
最佳答案
2023-2-11 09:45:31
你好。请问这里面的零件是各不相同吗
单选投票, 共有 1 人参与投票
0.00% (0)
100.00% (1)
0.00% (0)
0.00% (0)
0.00% (0)
0.00% (0)
您所在的用户组没有投票权限

评分

参与人数 1荣誉 +2 贡献 +2 收起 理由
sfqxx + 2 + 2 第一

查看全部评分

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-2-11 09:45:22 | 显示全部楼层
看看看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-2-11 09:45:31 | 显示全部楼层    本楼为最佳答案   
你好。请问这里面的零件是各不相同吗

评分

参与人数 1荣誉 +1 鱼币 +1 收起 理由
zhangjinxuan + 1 + 1 指出错误,已改正

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-2-11 09:48:40 | 显示全部楼层
额外减小 发表于 2023-2-11 09:45
你好。请问这里面的零件是各不相同吗

各不相同,且不考虑顺序
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-2-11 09:49:45 | 显示全部楼层

感谢 VIP 大佬的 贡献~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-2-11 09:57:54 | 显示全部楼层
zhangjinxuan 发表于 2023-2-11 09:49
感谢 VIP 大佬的 贡献~

想要点鱼币()

评分

参与人数 1鱼币 +5 收起 理由
zhangjinxuan + 5 满足你~

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-2-11 10:12:20 | 显示全部楼层
你好
我是菜鸟。我想问问这个地方是否出错
船被破坏了,被破坏成成了 n 个零件……

但你们数了数,发现这里一共有 m 个零件,所以你们想知道,你们要最多尝试多少次,才能拼成整个船呢(不考虑零件的先后顺序,且零件互不相同)?

因为答案可能很大,所以请你对 1e9 + 7 取余

换句话说,请求出 C(n,m) % (1e9 + 7) = ?

提示:C(n,m) = C(n, m) = n! / (n - m)! / m!,在这里,n! 为 n 的阶乘

这里是不是应该改成C(m,n)(Cmn
因为不是要从m个零件里面挑n个吗
如有误解勿喷

评分

参与人数 1荣誉 +1 鱼币 +1 收起 理由
zhangjinxuan + 1 + 1 soga……我……我真菜鸡……

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-2-11 10:14:28 | 显示全部楼层
这里面出现一个(n-m)!
但按照题意应该是n≤m吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-2-11 10:50:30 | 显示全部楼层
看看,实在想不到怎么做
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-2-11 10:59:24 | 显示全部楼层
本帖最后由 tommyyu 于 2023-2-11 11:01 编辑

题解没有return 0,直接0分
只要 m < n,就能TLE
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-2-11 11:00:40 | 显示全部楼层
tommyyu 发表于 2023-2-11 10:59
题解没有return 0,直接0分
只要 n < m,就能TLE

你真聪明
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-2-11 11:01:10 | 显示全部楼层
tommyyu 发表于 2023-2-11 10:59
题解没有return 0,直接0分
只要 n < m,就能TLE

会吗?除非来出一个?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-2-11 11:04:12 | 显示全部楼层
本帖最后由 tommyyu 于 2023-2-11 11:05 编辑
zhangjinxuan 发表于 2023-2-11 11:01
会吗?除非来出一个?


在大部分评测网站上,这种最后不写return 0可能不会扣分
但是,在ccf等考试中,不写return 0会直接让这个0分
所以,只要有m<n,就可以0分

评分

参与人数 1荣誉 +2 鱼币 +2 收起 理由
zhangjinxuan + 2 + 2

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-2-11 11:05:54 | 显示全部楼层
唉。想半天没想到。看看是什么算法
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-2-11 11:09:16 | 显示全部楼层
tommyyu 发表于 2023-2-11 11:04
在大部分评测网站上,这种最后不写return 0可能不会扣分
但是,在ccf等考试中,不写return 0会直接让 ...


记住了,谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-2-11 11:24:26 | 显示全部楼层
能把十万鱼币宝箱分一下么
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-2-11 11:29:08 | 显示全部楼层
tommyyu 发表于 2023-2-11 11:24
能把十万鱼币宝箱分一下么

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-2-11 12:40:08 | 显示全部楼层
tommyyu 发表于 2023-2-11 11:24
能把十万鱼币宝箱分一下么

我出的想法,他去用了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-2-11 13:58:27 | 显示全部楼层
额外减小 发表于 2023-2-11 10:14
这里面出现一个(n-m)!
但按照题意应该是n≤m吧

您指的是题解??
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-2-11 15:09:31 | 显示全部楼层

没。我说刚才原本的题目出现了一个负数阶乘。
现在改好了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-10-6 10:28

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表