name: 组合数学计算器 description: 使用模运算计算组合数值 allowed-tools:
- Read
- Write
- Grep
- Glob
- Edit
组合数学计算器技能
目的
为竞技编程应用提供支持模运算的组合数值计算。
能力
- 阶乘和逆阶乘预计算
- 支持模运算的nCr、nPr计算
- 卡特兰数、斯特林数、贝尔数
- 卢卡斯定理实现
- 容斥原理应用
- 生成函数
目标流程
- 组合计数
- 数论算法
- 动态规划模式匹配
组合函数
基本计数
- 阶乘:n!
- 排列:P(n,r) = n!/(n-r)!
- 组合:C(n,r) = n!/(r!(n-r)!)
特殊数列
- 卡特兰数
- 斯特林数(第一类和第二类)
- 贝尔数
- 错位排列数
高级技术
- 卢卡斯定理(适用于大n、小p)
- 容斥原理
- Burnside引理
- 生成函数
输入模式
{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": ["nCr", "nPr", "factorial", "catalan", "stirling", "lucas", "precompute"]
},
"n": { "type": "integer" },
"r": { "type": "integer" },
"mod": { "type": "integer" },
"precomputeLimit": { "type": "integer" }
},
"required": ["operation"]
}
输出模式
{
"type": "object",
"properties": {
"success": { "type": "boolean" },
"result": { "type": "integer" },
"code": { "type": "string" },
"formula": { "type": "string" }
},
"required": ["success"]
}