Open In App

Python – Remove K length Duplicates from String

Last Updated : 02 Sep, 2020
Improve
Improve
Like Article
Like
Save
Share
Report

Given a String remove all K length duplicates.

Input : test_str = ‘geeksforfreeksfo’, K = 3
Output : geeksforfree
Explanation : eek, eks, ksf, sfo already in string, hence removed.

Input : test_str = ‘geeksforg’, K = 3
Output : geeksforg
Explanation : No repeated string, nothing removed.

Method : Using loop + slicing

In this, we keep track of all the K length substrs encountered, extracted using slicing, and check each time for recurrence, if occurred they are removed.

Python3




# Python3 code to demonstrate working of 
# Remove K length Duplicates from String
# Using loop + slicing 
  
# initializing strings
test_str = 'geeksforfreeksfo'
  
# printing original string
print("The original string is : " + str(test_str))
  
# initializing K 
K = 3
  
memo = set()
res = []
for idx in range(0, len(test_str) - K):
      
    # slicing K length substrings
    sub = test_str[idx : idx + K]
      
    # checking for presence
    if sub not in memo:
        memo.add(sub)
        res.append(sub)
          
res = ''.join(res[ele] for ele in range(0, len(res), K))
  
# printing result 
print("The modified string : " + str(res)) 


Output

The original string is : geeksforfreeksfo
The modified string : geeksforfree

Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads