非常感谢有关此练习问题的任何意见:
给定长度为n
和整数k
的字符串,在k
< = {的约束下打印长度为1
(打印nCk)的所有可能组合{1}}< = k
。你可以假设没有重复的字符
示例:
abc,2 - > ab,bc,ca
abc,1 - > a,b,c
abc,3 - > ABC
答案 0 :(得分:1)
select dogType,
sum(case when agLevel = 1 then total else 0 end) as ag1,
sum(case when agLevel = 2 then total else 0 end) as ag2,
sum(case when agLevel = 3 then total else 0 end) as ag3
from dogs
group by dogType
答案 1 :(得分:0)
感谢Rain的回答,效果很好。
答案:
import itertools
def func(data, r):
return ["".join(x) for x in itertools.combinations(data, r)]
print(func('abc', 2))
print(func('abc', 1))
print(func('abc', 3))
输出:
['ab', 'ac', 'bc']
['a', 'b', 'c']
['abc']
注意:
itertools.combinations(iterable,r)
从输入迭代中返回元素的r长度子序列。
组合以字典排序顺序发出。因此,如果对输入iterable进行排序,则组合元组将按排序顺序生成