题目链接:https://vjudge.net/problem/HDU-2049

不容易系列之(4)——考新郎

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 42220    Accepted Submission(s): 15531

Problem Description
国庆期间,省城HZ刚刚举行了一场盛大的集体婚礼,为了使婚礼进行的丰富一些,司仪临时想出了有一个有意思的节目,叫做"考新郎",具体的操作是这样的:

首先,给每位新娘打扮得几乎一模一样,并盖上大大的红盖头随机坐成一排;
然后,让各位新郎寻找自己的新娘.每人只准找一个,并且不允许多人找一个.
最后,揭开盖头,如果找错了对象就要当众跪搓衣板...

看来做新郎也不是容易的事情...

假设一共有N对新婚夫妇,其中有M个新郎找错了新娘,求发生这种情况一共有多少种可能.

Input
输入数据的第一行是一个整数C,表示测试实例的个数,然后是C行数据,每行包含两个整数N和M(1<M<=N<=20)。
Output
对于每个测试实例,请输出一共有多少种发生这种情况的可能,每个实例的输出占一行。
Sample Input
2 2 2 3 2
Sample Output
1 3
Author
lcy
Source
递推求解专题练习(For Beginner)
Recommend
lcy
题解:
部分错排,先在n个个中条线m个,然后这m个进行错排。总数: C[n][m] * D[m]。

代码如下:

 1 #include <iostream>
 2 #include <cstdio>
 3 #include <cstring>
 4 #include <algorithm>
 5 #include <vector>
 6 #include <cmath>
 7 #include <queue>
 8 #include <stack>
 9 #include <map>
10 #include <string>
11 #include <set>
12 using namespace std;
13 typedef long long LL;
14 const int INF = 2e9;
15 const LL LNF = 9e18;
16 const int MOD = 1e9+7;
17 const int MAXN = 20+10;
18
19 LL C[MAXN][MAXN], D[MAXN];
20
21 void init()
22 {
23     memset(C, 0, sizeof(C));
24     for(int i = 0; i<MAXN; i++)
25     {
26         C[i][0] = 1;
27         for(int j = 1; j<=i; j++)
28             C[i][j] = C[i-1][j-1] + C[i-1][j];
29     }
30
31     D[0] = 1; D[1] = 0;
32     for(int i = 2; i<MAXN; i++)
33         D[i] = 1LL*(i-1)*(D[i-1]+D[i-2]);
34 }
35
36 int main()
37 {
38     init();
39     int T, n, m;
40     scanf("%d", &T);
41     while(T--)
42     {
43         scanf("%d%d", &n,&m);
44         printf("%lld\n", 1LL*C[n][m]*D[m]);
45     }
46 }

View Code

转载于:https://www.cnblogs.com/DOLFAMINGO/p/8324408.html

HDU2049 不容易系列之(4)考新郎 —— 错排相关推荐

  1. HDU - 2049 不容易系列之(4)——考新郎(错排问题+组合数学)

    题目链接:点击查看 题目大意:有n对新婚夫妇,有m个新郎找错了新娘,问发生这种情况的可能 题目分析:匹配错误问题可以类比于全错排问题,这里插眼放一个讲的不错的博客: https://blog.csdn ...

  2. HDU2049 不容易系列之(4)——考新郎【递推】

    不容易系列之(4)--考新郎 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) T ...

  3. HDU2049 不容易系列之(4)——考新郎

    国庆期间,省城HZ刚刚举行了一场盛大的集体婚礼,为了使婚礼进行的丰富一些,司仪临时想出了有一个有意思的节目,叫做"考新郎",具体的操作是这样的: 首先,给每位新娘打扮得几乎一模一样 ...

  4. 不容易系列之(4)——考新郎

    Problem Description 国庆期间,省城HZ刚刚举行了一场盛大的集体婚礼,为了使婚礼进行的丰富一些,司仪临时想出了有一个有意思的节目,叫做"考新郎",具体的操作是这样 ...

  5. HDOJ 2049 不容易系列之(4)——考新郎

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2049 Problem Description 国庆期间,省城HZ刚刚举行了一场盛大的集体婚礼,为了使婚 ...

  6. V - 不容易系列之(4)――考新郎(第二季水)

    Description 国庆期间,省城HZ刚刚举行了一场盛大的集体婚礼,为了使婚礼进行的丰富一些,司仪临时想出了有一个有意思的节目,叫做"考新郎",具体的操作是这样的:       ...

  7. HDU 2049 不容易系列之(4)——考新郎( 错排 )

    链接:传送门 思路:错排水题,从N个人中选出M个人进行错排,即 C(n,m)*d[m] 补充:组合数C(n,m)能用double计算吗?第二部分有解释 Part 1. 分别求出来组合数的分子和分母然后 ...

  8. HDUOJ 不容易系列之(4)——考新郎

    题目链接http://acm.hdu.edu.cn/showproblem.php?pid=2049 一开始我的想法就是使用错排公式,先使用全排列从N对中选出M对,然后再使用错排对选出的M对进行错排计 ...

  9. HDU:4535 吉哥系列故事——礼尚往来(数学:错排)

    吉哥系列故事--礼尚往来 Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others) Tot ...

  10. hdu 2049 不容易系列之(4)——考新郎 解题报告

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2049 写这篇解题报告时 我真的很气愤 对自己又一次犯下低级错误改了两个小时 int型的数据居然用%I6 ...

最新文章

  1. 城市生态的机器人革命
  2. 法猿生存计划--左边的管理,技术正确
  3. C#编程(三十五)----------foreach和yield
  4. Linux文件系统与日志
  5. 机器学习中如何解决数据不平衡问题?
  6. python之字符编码(四)
  7. Spark Streaming 反压机制
  8. qml鼠标拖动_QML学习笔记(七)— 实现可拖拽、编辑、选中的ListView
  9. python 抓取 快代理-国内普通代理 IP
  10. 数据库原理及应用实验二
  11. visio画图常见问题解答
  12. iOS之 simlator模拟器截屏
  13. asp.net pdf如何转换成tif_PDF如何转换成PPT文档?怎么使用PDF转换成PPT的软件?
  14. 几种常用的显示器分辨率
  15. 单片机led灯闪烁实验总结_这样处理家中LED灯和节能灯关了还是微亮或闪烁的故障...
  16. Redis系列(三)--过期策略
  17. Web3还没实现,Web5乍然惊现!
  18. android源码结构分析
  19. POI导出Excel(一)
  20. 阿里云不同账号实现内网ping通

热门文章

  1. Lightroom Classic 教程,如何将照片从 Lightroom 移至Ps,在 Ps 中为照片添加文本?
  2. 如何在恢复模式下启动 Mac?
  3. Lock and Load FCPX 报错处理方法
  4. 如何使用Movavi Academic制作出实用的互动视频
  5. 2.移植3.4内核-支持烧写yaffs2,裁剪内核并制作补丁
  6. js复制功能的有效方法总结
  7. ARKit何以从同类技术中胜出?
  8. 居中 html css
  9. Android TextView 实现文字大小不同和文字颜色不同
  10. LevelDB源码之五Current文件\Manifest文件\版本信息