【备战秋招】每日一题:2023.04.25-测试工程师-荣耀笔试(第三题)-分礼物

为了更好的阅读体检,可以查看我的算法学习网
在线评测链接:P1273

题目内容

塔子哥是一位热心的数学老师,他每年都会给他的学生们准备一些有趣的数学问题,作为圣诞节的礼物。今年,他准备了 n n n 件无差别的小礼物,比如钢笔、橡皮、尺子等。他想要正常分给他的 k k k 个学生,,并且不会有剩余的礼物。

但是塔子哥有点困惑,因为他不知道如何分配这些礼物。他想到了你,他的助教,也是一位数学高手。他决定把这个问题交给你,希望你能帮他找到一个能够将 n n n 个无差别的礼物分给 k k k 个学生的分法。

输入描述

输入仅一行,包含两个整数 n n n k k k n n n 表示礼物的数量, k k k 表示小朋友的数量。( 0 ≤ n ≤ 10 0\le n \le 10 0n10 1 ≤ k ≤ 10 1\le k \le 10 1k10

输出描述

第一行输出分法总数 t t t

后续 t t t 行依次列出每种分法,每件礼物用字符 * (ascii码为 42 42 42 )表示,用字符 | (ascii码为 124 124 124 ) 分隔小朋友,按照ascii码从小到大输出。

具体输出和顺序请参考样例。

样例

输入

3 2

输出

4
***|
**|*
*|**
|***

样例解释

第一行表示 3 3 3 件礼物分给 2 2 2 个小朋友的分法一些有 4 4 4 种;

第二行表示第一个小朋友分有 3 3 3 件礼物,第二个小朋友无礼物,以 | 分隔;

第三行表示第一个小朋友分有 2 2 2 件礼物,第二小朋友分有 1 1 1 件礼物,以 | 分隔;

第四行表示第一个小朋友分有 1 1 1 件礼物,第二个小朋友分有 2 2 2 件礼物,以 | 分隔;

第五行表示第一个小朋友无礼物,第二小朋友分有 3 3 3 件礼物,以 | 分隔。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

塔子哥学算法

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值