Merge the Tools! Hacker Rank Solution – Queslers

Problem: Merge the Tools! Hacker Rank Solution

Consider the following:

A string, s, of length n where s = c0c1. . . . cn-1.

An integer, k, where k is a factor of n.

We can split s into n/k substrings where each subtring, ti, consists of a contiguous block of k characters in s. Then, use each ti to create string ui such that:

The characters in ui are a subsequence of the characters in ti.

Any repeat occurrence of a character is removed from the string such that each character in ui occurs exactly once. In other words, if the character at some index j in ti occurs at a previous index < j in ti, then do not include the character in string ui.

Given s and k, print n/k lines where each line i denotes string ui.



k = 3

There are three substrings of length 3 to consider: ‘AAA’, ‘BCA’ and ‘DDE’. The first substring is all ‘A’ characters, so u1 = ‘A’. The second substring has all distinct characters, so u2 = ‘BCA’. The third substring has 2 different characters, so u3 = ‘DE’. Note that a subsequence maintains the original order of characters encountered. The order of characters in each subsequence shown is important.

Function Description 

Complete the merge_the_tools function in the editor below.

merge_the_tools has the following parameters:

  • string s: the string to analyze
  • int k: the size of substrings to analyze


Print each subsequence on a new line. There will be n/k of them. No return value is expected.

Input Format

The first line contains a single string, s.

The second line contains an integer, k, the length of each substring.


  • 1 <= n <= 10^4, where n is the length of s
  • 1 <= k <= n 
  • It is guaranteed that n is a multiple of k.

Sample Input

STDIN       Function
-----       --------
3           k = 3

Sample Output 



Split s into n/k = 9/3 = 3 equal parts of length k = 3. Convert each ti to ui by removing any subsequent occurrences of non-distinct characters in ti:

  1. t0 = “AAB” – u0 = “AB”
  2. t1 = “CAA” – u1 = “CA”
  3. t2 = “ADA” – u2 = “AD”

Print each ui on a new line.

Merge the Tools! Hacker Rank Solution in Python 2

# Enter your code here. Read input from STDIN. Print output to STDOUT
s = raw_input().strip()
k = int(raw_input())
i = 0
while i < len(s):
    a = s[i:i+k]
    output = ""
    for x in a:
        if x not in output:
            output += x
    print output
    i += k

Merge the Tools! Hacker Rank Solution in Python 3

def merge_the_tools(string, k):
    for part in zip(*[iter(string)] * k):
        d = dict()
        print(''.join([ d.setdefault(c, c) for c in part if c not in d ]))

Merge the Tools! Hacker Rank Solution in pypy

def merge_the_tools(string, k):
    # your code goes here
    for x in xrange(0,len(string),k):
        print ''.join(u_list)

Merge the Tools! Hacker Rank Solution in pypy3

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

for i in range(0,ln,k):
    for x in ss:
        if x not in sss:

    print (''.join(sss))  
Merge the Tools! Hacker Rank Solution Review:

In our experience, we suggest you solve this Merge the Tools! Hacker Rank Solution and gain some new skills from Professionals completely free and we assure you will be worth it.

Merge the Tools! Problem is available on Hacker Rank for Free, if you are stuck anywhere between compilation, just visit Queslers to get all Hacker Rank Solution


I hope this Merge the Tools! Hacker Rank Solution would be useful for you to learn something new from this problem. If it helped you then don’t forget to bookmark our site for more Hacker Rank, Leetcode, Codechef, Codeforce Solution.

This Problem is intended for audiences of all experiences who are interested in learning about Data Science in a business context; there are no prerequisites.

Keep Learning!

More Hacker Rank Problem & Solutions >>

The Minion Game Hacker Rank Solution

itertools.product() Hacker Rank Solution

String Validators Hacker Rank Solution

Text Alignment Hacker Rank solution

String validators Hacker Rank Solution

Leave a Reply

Your email address will not be published.