组合数的计算

C: 即从a个元素中选取b个元素的组合数。

cpp 复制代码
LL C(int a, int b)
{
    LL res = 1;
    for (int i = a, j = 1; j <= b; i --, j ++ )
        res = res * i / j;
    return res;
}

A: 表示从a个元素中选取b个元素进行排列的情况数。

cpp 复制代码
LL P(int a, int b)
{
    LL res = 1;
    for (int i = a; i > a - b; i--)
    {
        res *= i;
    }
    return res;
}
相关推荐
a187927218311 分钟前
【算法】动态规划第三篇:背包第一课——贪心之死与正序倒序开关
算法·leetcode·动态规划·贪心·dp·暴力·算法讲解
hope_wisdom4 分钟前
C/C++数据结构之二叉树的遍历
c语言·数据结构·c++·二叉树·深度优先·广度优先
黄金龙PLUS11 分钟前
Xoodoo置换算法的优缺点
算法·网络安全·密码学·哈希算法·同态加密
LayZhangStrive43 分钟前
数据结构与算法 - 堆排序
java·数据结构·算法·排序算法·堆排序·大根堆
cpp_learner1 小时前
C++ 实现责任链模式(Chain of Responsibility):从一堆 if-else 到可插拔的处理管道
c++·设计模式
residual_fan1 小时前
深度渐进收缩学习(DPSL):面向强噪声与类内分散的机械复合故障诊断方法
人工智能·算法·数据挖掘·数据分析
一木 之林1 小时前
五、C++ 新特性、关键字与编译原理(进阶)(一)
c语言·开发语言·c++
2601_962298271 小时前
交易开拓者通常使用什么编程语言?这种语言如何帮助自动化交易?
java·c++·python·编程语言·自动化交易
码匠许师傅1 小时前
【设计模式精讲】23.备忘录模式(Memento)
c++·设计模式·软件工程·uml·备忘录模式
a187927218312 小时前
【算法】动态规划第五篇:区间 DP——从“看什么都像背包“到“最后戳谁“
算法·leetcode·动态规划·dp·区间·区间dp·算法讲解