组合数的计算

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;
}
相关推荐
yyt_cdeyyds8 分钟前
FIFO和LRU算法实现操作系统中主存管理
算法
暮色_年华9 分钟前
Modern Effective C++item 9:优先考虑别名声明而非typedef
c++
重生之我是数学王子17 分钟前
QT基础 编码问题 定时器 事件 绘图事件 keyPressEvent QT5.12.3环境 C++实现
开发语言·c++·qt
alphaTao34 分钟前
LeetCode 每日一题 2024/11/18-2024/11/24
算法·leetcode
我们的五年41 分钟前
【Linux课程学习】:进程程序替换,execl,execv,execlp,execvp,execve,execle,execvpe函数
linux·c++·学习
kitesxian43 分钟前
Leetcode448. 找到所有数组中消失的数字(HOT100)+Leetcode139. 单词拆分(HOT100)
数据结构·算法·leetcode
做人不要太理性1 小时前
【C++】深入哈希表核心:从改造到封装,解锁 unordered_set 与 unordered_map 的终极奥义!
c++·哈希算法·散列表·unordered_map·unordered_set
程序员-King.1 小时前
2、桥接模式
c++·桥接模式
chnming19871 小时前
STL关联式容器之map
开发语言·c++
VertexGeek1 小时前
Rust学习(八):异常处理和宏编程:
学习·算法·rust