【指数型母函数】HDU1521[排列组合]题解

Word论文插入带有方括号序号的参考文献——尾注+交叉引用 文章目录1. 尾注功能2. 为参考文献的序号添加方括号3. 调整参考文献前的序号大小4. 重复引用同一参考文献5. 将交叉引用的序号改为带有方括号的上标序号格式6. 删除参考文献前的尾注横线 1. 尾注功能 首先使用尾注功能顺序插入参考文献,暂时不考虑方括号问题,具体操作如下: ① 将光标放在需要插入参考文献角标的地方 ② 在word菜单栏,“引用-脚注部分右下角箭头”(用来设置尾注格式) ③如... 阅读详情

题目概述

n 个物品,第 i 个物品有 numi 个,求选出 m 个物品组成排列的方案数。

解题报告

如果不是组成排列,就是经典的普通型母函数。我们发现无法用普通型母函数表示出“组成排列”这个条件,实际上这是经典的指数型母函数(摘自这里)。

口袋中有白球 2 个,红球 3 个,黄球 1 个,任取 3 个作为一个排列,总共有多少种排列?

类似地用指数型母函数解决:用 (1+x1!+x22!) 表示取白球 0 个,1 个或者 2 个那么 (1+x1!+x22!)(1+x1!+x22!+x33!)(1+x1!) 来表示所有的排列结果。

=1+3x1!+8x22!+19x33!+38x44!+60x55!+60x66!

找到次数为 3 的那一项,系数为 19 ,那么总共有 19 种排列。

这道题就按照上面那么做就行了。

示例程序

#include<cstdio>
using namespace std;
typedef double DB;
const int maxn=10;

int n,m,num[maxn+5],fac[maxn+5];DB a[maxn+5],b[maxn+5];

int main(){
    freopen("program.in","r",stdin);
    freopen("program.out","w",stdout);
    fac[0]=1;for (int i=1;i<=maxn;i++) fac[i]=fac[i-1]*i;
    while (~scanf("%d%d",&n,&m)){
        for (int i=1;i<=n;i++) scanf("%d",&num[i]);
        for (int i=0;i<=m;i++) a[i]=0,b[i]=0;a[0]=1;
        for (int t=1;t<=n;t++){
            for (int i=0;i<=m;i++)
                for (int j=0;i+j<=m&&j<=num[t];j++)
                    b[i+j]+=a[i]/fac[j]; //a,b需要是实数
            for (int i=0;i<=m;i++) a[i]=b[i],b[i]=0;
        }
        printf("%.0f\n",a[m]*fac[m]);
    }
    return 0;
}
别只刷题了!我用834分经验告诉你,华为HCIP大数据考试(H13-723)这样准备更高效 本文分享了华为HCIP大数据认证(H13-723)834分通关的高效备考经验。通过分析考试动态、题库验证技巧和章节优先级策略,帮助考生超越单纯刷题,系统化掌握核心知识点。特别强调实时流处理和离线批处理等重点章节,提供黄金90分钟临场发挥策略,助力考生一次性通过考试。 阅读详情

相关推荐

从CentOS迁移到openEuler 24.03 LTS:手把手教你部署Java+MySQL+Redis+Nginx全栈环境

本文详细指导如何从CentOS迁移到openEuler 24.03 LTS,并部署Java+MySQL+Redis+Nginx全栈环境。涵盖系统配置、软件安装、性能优化及环境验证,助力企业级用户高效完成服务器迁移与部署。

weixin_26938645的博客 363

HDU1521——排列组合(生成指数函数)、P3455 [POI2007] ZAP-Queries、P3327 [SDOI2015] 约数个数和

通过两层循环计算结果:外层循环控制左边界。然后通过两层循环筛选出素数,并设置相应的。对于不是素数乘积的数,根据其素因子的情况设置。未被标记为已访问(即未被筛掉),将其标记为素数。初始化一些数组和变量用于后续计算。函数进行初始化操作。最后通过累加的方式计算前缀和,将。的值和一些计算得出部分结果累加到。为 -1 ,同时增加素数计数器。通过两层循环计算最终的结果。内层循环计算左右边界,根据。用于计算特定的数值。的计算是基于一定的数学规律。在每次测试用例中,读入。数组的值计算中间的累加和。在每个测试用例中,读入。

u014114223的博客 2195

PMAC 中文手册(推荐详细)+标签.pdf

很全面的资料,奈何没有标签,于是自己制作的标签,非常不容易

Hdu 1521 排列组合 —— 指数母函数

This way 题意: 题解: 普通母函数是求组合问题,指数母函数是求排列问题。那么这道题的函数为: ∏i=1n(1+x+x22!+...+xnn!)\prod\limits_{i=1}^{n}(1+x+\frac{x^2}{2!}+...+\frac{x^n}{n!})i=1∏n​(1+x+2!x2​+...+n!xn​) 其实和普通母函数差不多 #include<bits/stdc++.h> using namespace std; #define ll long long con

天翼之城的博客 216

hdu1521 排列组合 指数母函数模板题

排列组合 Time Limit: 2000/1000 MS (Java/Others)Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 4891Accepted Submission(s): 2122 Problem Description 有n种物品,并且知道每种物品的数量。要求从中选出m件物品的排列...

weixin_34413357的博客 142

hdu1521排列组合---指数母函数

题意: n种元素,每种有 ni个,选出 m 个的排列有多少种 题解指数母函数的裸题 x^n 项的系数为 an/n!.... 代码如下: #include <iostream> #include <stdio.h> #include<string.h> #include<algorithm> #include<...

weixin_30486037的博客 110

母函数(详细分析+例题讲解) 每日一遍,算法再见!

母函数 普通母函数 在研究普通母函数之前,先看一个多项式,以便于更好的理解。 (1+a1x)(1+a2x)(1+a3x)(1+a4x)......(1+anx)=1+(a1+a2+...+an)x+(a1a2+a1a3+...+an−1an)x2+...+a1a2a3...anxn(1+a_1x)(1+a_2x)(1+a_3x)(1+a_4x)......(1+a_nx) = 1+(a_1+a_2+...+a_n)x+(a_1a_2+a_1a_3+...+a_{n-1}a_n)x^2+...+a_1a_2a

TheWayForDream 2828

HDU 1521 排列组合指数母函数

HDU 1521 排列组合指数母函数):http://acm.hdu.edu.cn/showproblem.php?pid=1521 题面描述: Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 3369    Accepted

而濡木染 680

排列组合 HDU - 1521 -指数母函数

排列组合 HDU - 1521 一句话区分指数母函数母函数就是 母函数是组合数,指数母函数是排列数 #include<bits/stdc++.h> using namespace std; #define maxn 12 double ans[maxn],tp[maxn],inv[maxn]; int n,m,a[maxn]; void i...

weixin_33795093的博客 135

hdu1521 排列组合指数母函数

排列组合 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 3098    Accepted Submission(s): 1275 Problem Description 有n种物品,并且知道每种物品的数量。要求从

hahahaha 1073

HDU1521 排列组合指数母函数

排列组合 Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other) Problem Description 有n种物品,并且知道每种物品的数量。要求从中选出m件物品的排列数。例如有两种物品...

mind_jia 207

hdu1521-排列组合

http://acm.hdu.edu.cn/showproblem.php?pid=1521 指数母函数 G(x) = ( 1 + x / 1!  + (x^2)/(2!) + .....+ (x ^ n1 ) / (n1!)  ) * (( 1 + x / 1!  + (x^2)/(2!) + .....+ (x ^ n2 ) / (n2!)*.............*(( 1 + x

bo-jwolf的专栏 1164

HDU - 1521 排列组合 (指数母函数)

有n种物品,并且知道每种物品的数量。要求从中选出m件物品的排列数。例如有两种物品A,B,并且数量都是1,从中选2件物品,则排列有"AB","BA"两种。

hyesuixin的博客 442

hdu 1521(指数母函数)

排列组合Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 4354    Accepted Submission(s): 1857Problem Description有n种物品,并且知道每种物品的数量。要求从中选出m件物品的排列数。例如有两...

wust_cyl的博客 365

【组合数学】指数母函数 应用 ( 多重集排列问题 | 不同球放在不同盒子里 | 奇/偶数序列的指数生成函数推导 )

多重集全排列公式 指数母函数 处理多重集排列问题 引入 指数母函数 处理多重集排列问题 公式推导 指数母函数 处理 有限数字串问题 指数母函数 处理 n 位数字串问题 指数母函数 处理 n 位数字串问题 ( 考试题 )

让 学习 成为一种 习惯 ( 韩曙亮 の 技术博客 ) 2321

指数母函数的应用

上一篇文章,我们介绍了最普通的母函数和它的应用,如果不理解母函数概念的可以先去看这篇文章了解https://editor.csdn.net/md/?articleId=115746930 今天我们继续介绍母函数的另一种类指数母函数,我们都知道普通母函数只能帮助我们解决组合问题,也就是选出这些东西的组合方式,不考虑排列的顺序。如果问题变化为排列问题,普通母函数显然无法很好的解决这种问题。在介绍指数母函数之前,先给大家一个经典排列问题思考一下 ...

徒手拆机甲的博客 737

指数母函数(Counting Sequences II)

泰勒展开 公式: 常见的公式: ex=1+x+x22!+x33!+...e^{x}=1+x+\dfrac{x^2}{2!}+\dfrac{x^3}{3!}+...ex=1+x+2!x2​+3!x3​+... e−x=1−x+x22!−x33!+...e^{-x}=1-x+\dfrac{x^2}{2!}-\dfrac{x^3}{3!}+...e−x=1−x+2!x2​−3!x3​+... ekx=...

QAQ 1757

【组合数学】指数母函数(多重集排列问题)

文章目录1.指数母函数的定义2.多重集排列问题3.指数母函数求解多重集排列问题4.模板5.练手题目 1.指数母函数的定义 对于一个序列a0,a1,a2⋅⋅⋅⋅ana^0,a^1,a^2\cdot\cdot\cdot\cdot a^na0,a1,a2⋅⋅⋅⋅an,我们称a00!+a11!⋅x1+a22!⋅x2+a33!⋅x3+⋅⋅⋅+ann!⋅xn\frac{a_0}{0!}+\frac{a_1}{1!}\cdot x^1+\frac{a_2}{2!}\cdot x^2 +\frac{a_3}{3!}

Qiuker_jl的博客 2308

[母函数]HDU 1521——排列组合

Holding Bin-Laden Captive!Problem DescriptionWe all know that Bin-Laden is a notorious terrorist, and he has disappeared for a long time. But recently, it is reported that he hides in Hang Zhou of Chin

CHN_JZ的博客 1623

hdu 1521 (字典树)

统计难题 Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 131070/65535 K (Java/Others) Total Submission(s): 45181    Accepted Submission(s): 16131 Problem Description Ignatius最近遇到一个难题,老师交给他

看起来喜欢做枯燥事情的人或许只是更清楚自己想要什么罢了 333

hdu-1521-排列组合母函数

排列组合 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 2173    Accepted Submission(s): 894 Problem Description 有n种物品,并且知道每种物品的数量。要求从中选出m件

AC之路 796

已编译完成的openssl3.3.2库(win10+msvc2019-x64 动态库+静态库)

https://blog.csdn.net/aggs1990/article/details/143482284已编译完成的openssl3.3.2库(win10+msvc2019-x64 动态库+静态库)CSDN审核可能较慢,如无法下载,可以过段时间再回来看下

上一篇: 【普通型母函数】HDU1085[Holding Bin-Laden Captive!]题解
下一篇: 【普通型母函数+容斥+FFT】BZOJ3771[Triple]题解
ZigZagK
博客等级 码龄10年 107粉丝 340原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值