In this itertools.combinations_with_replacement() problem we need to develop a python program that can read a string and then we need to use the itertool module and print all possible combinations of string in the lexicographically sorted order on the output screen.


HackerRank itertools.combinations_with_replacement() solution in python


Problem solution in Python 2 programming.

from itertools import combinations_with_replacement

S,k = raw_input().split()
k = int(k)

print '\n'.join(sorted(''.join(sorted(c)) for c in combinations_with_replacement(S,k)))


Problem solution in Python 3 programming.

# Enter your code here. Read input from STDIN. Print output to STDOUT
from itertools import combinations_with_replacement
s, n = input().split()
print(*[''.join(i) for i in combinations_with_replacement(sorted(s), int(n))], sep="\n")


Problem solution in pypy programming.

from itertools import combinations_with_replacement
source, combos = raw_input().split()
sstr = sorted(source)
for combo in combinations_with_replacement(sstr,int(combos)):
    print ''.join(combo)


Problem solution in pypy3 programming.

# Enter your code here. Read input from STDIN. Print output to STDOUT
from itertools import combinations_with_replacement
s,k = input().split()
print('\n'.join(map(''.join,combinations_with_replacement(sorted(s),int(k)))))