- This tool returns the length subsequences of elements from the input iterable.
- Combinations are emitted in lexicographic sorted order. So, if the input iterable is sorted, the combination tuples will be produced in sorted order.
Sample Code:
>>> from itertools import combinations
>>> 
>>> print list(combinations('12345',2))
[('1', '2'), ('1', '3'), ('1', '4'), ('1', '5'), ('2', '3'), ('2', '4'), ('2', '5'), ('3', '4'), ('3', '5'), ('4', '5')]
>>> 
>>> A = [1,1,3,3,3]
>>> print list(combinations(A,4))
[(1, 1, 3, 3), (1, 1, 3, 3), (1, 1, 3, 3), (1, 3, 3, 3), (1, 3, 3, 3)]
Input Format:
A single line containing the string S and integer value k separated by a space.
Constraints: 
- 0 < k < len(s)
- The string contains only UPPERCASE characters.
Output Format:
Print the different combinations of string S on separate lines.
Sample Input:
HACK 2
A
C
H
K
AC
AH
AK
CH
CK
HK
from itertools import combinations
word, num = input().split()
for i in range(1, int(num)+1):
    for j in combinations(sorted(word), i):
        print(''.join(j))
        
No comments:
Post a Comment