In this Compress the string problem we need to develop a python program that can read a string as input and then we need to print the tuples containing the number of occurrence of integers on the output screen.


HackerRank Compress the String! solution in python


Problem solution in Python 2 programming.

from itertools import groupby
s=map(int,list(raw_input()))
l=[(sum(1 for i in g),k) for k,g in groupby(s)]
print ' '.join(map(str,l))


Problem solution in Python 3 programming.

from itertools import groupby
for key, group in groupby(input()):
   print('({}, {})'.format(len(list(group)), key), end=" ")


Problem solution in pypy programming.

# Enter your code here. Read input from STDIN. Print output to STDOUT
from itertools import groupby

print " ".join(str((len(list(k)),int(i))) for i,k in groupby(raw_input()))


Problem solution in pypy3 programming.

s=input()
prev_c=''
count=0
Out=()
for c in s :
    if c == prev_c:
        count+=1
    else:
        if prev_c!='':
            print((count+1,int(prev_c)), end=" ")
        prev_c=c
        count=0
print((count+1,int(prev_c)),end=" ")