解题思路:排列组合类型的题目只要数据量不是很大,基本用自带的函数就行了
注意事项:注意本题可以重复取一个值,所以用itertools.combinations_with_replacement
参考代码:
import itertools
k = int(input())
for i in range(k) :
m, n = map(int, input().split())
lst = [i for i in range(m + 1)]
lst_sum = []
for data in list(itertools.combinations_with_replacement(lst, n)) :
data = list(data)
if sum(data) == m :
data.sort()
if data not in lst_sum :
lst_sum.append(data)
print(len(lst_sum))
0.0分
4 人评分
C语言程序设计教程(第三版)课后习题9.6 (C语言代码)浏览:282 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:778 |
【金明的预算方案】 (C++代码)浏览:869 |
C语言程序设计教程(第三版)课后习题6.2 (C语言代码)浏览:714 |
printf基础练习2 (C语言代码)浏览:792 |
C语言训练-自由落体问题 (C语言代码)浏览:645 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:347 |
C语言程序设计教程(第三版)课后习题9.4 (C语言代码)浏览:696 |
数组输出 (C语言代码)浏览:745 |
1134题解(求分析)浏览:791 |