P14211

整数拆分

难度 4 级 小学 数学入门 加法原理 乘法原理 排列
讨论 统计 4通过 6提交 66.7%通过率 旧版界面
时间限制 1 秒 内存限制 128 MB

题目描述

给定三个正整数 n、m 和 k,请你计算以下三种拆分方式的方案数。

  1. 有序拆分(允许 0):将 n 拆分成 恰好 m 个非负整数 之和,顺序有关。

  2. 有序拆分(至少 1):将 n 拆分成 恰好 m 个正整数 之和,顺序有关。

  3. 下限有序拆分:将 n 拆分成 恰好 m 个正整数 之和,顺序有关,且每个数 不小于 k。

顺序有关指的是,如果可以仅通过调换数字的顺序,使得一个方案变成另外一个方案,这两个方案那么也视为不同的方案。换句话说,当两个方案出现的数字相同,出现数字的顺序也相同,那么两个方案才被视为同一种方案。

输入

第一行一个整数 T,表示测试数据组数。

每组测试数据包含三个整数 n, m, k,用空格分隔。

输出

对于每组测试数据,输出一行三个整数,分别表示三种拆分方式的方案数,用空格分隔。

样例

样例 1
输入
2
3 3 1
8 3 2
输出
10 1 1
45 21 6

提示

样例解释

第一组数据 n=3, m=3, k=1:

  • 有序拆分(允许 0):0+0+3、0+1+2、0+2+1、0+3+0、1+0+2、1+1+1、1+2+0、2+0+1、2+1+0、3+0+0
  • 有序拆分(至少 1):即 1+1+1。
  • 下限有序拆分(每个数 \ge 1):同上,1 种。

数据范围

  • 1 \le T \le 20
  • 1 \le n, m, k \le 20
  • 保证答案在 64 位整数范围内
Tab 缩进 · 提交后可在下方查看评测状态
请先登录后再提交