HackerRankInterview QuestionsPythonPython InterviewRandom

HackerRank Merge the Tools! solution in python | python problem solution

 

Consider the following:

  • A string, , of length  where .
  • An integer, , where  is a factor of .

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

  • The characters in  are a subsequence of the characters in .
  • Any repeat occurrence of a character is removed from the string such that each character in  occurs exactly once. In other words, if the character at some index  in  occurs at a previous index  in , then do not include the character in string .

Given  and , print  lines where each line  denotes string .

Example

There are three substrings of length  to consider: ‘AAA’, ‘BCA’ and ‘DDE’. The first substring is all ‘A’ characters, so . The second substring has all distinct characters, so . The third substring has  different characters, so . 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

Prints

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

Input Format

The first line contains a single string, .
The second line contains an integer, , the length of each substring.

Constraints

  • , where  is the length of 
  • It is guaranteed that  is a multiple of .

Sample Input

STDIN       Function
----- --------
AABCAAADA s = 'AABCAAADA'
3 k = 3

Sample Output

AB
CA
AD

Explanation

Split  into  equal parts of length . Convert each  to  by removing any subsequent occurrences of non-distinct characters in :

Print each  on a new line.

Problem solution in Python 2 programming.

# 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

Problem solution in Python 3 programming.

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 ]))

Problem solution in pypy programming.

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

Problem solution in pypy3 programming.

# Enter your code here. Read input from STDIN. Print output to STDOUT
s=input()
k=int(input())
ln=len(s)

for i in range(0,ln,k):
ss=s[i:i+k]
sss=[]
for x in ss:
if x not in sss:
sss.append(x)

print (''.join(sss))

Leave a Reply

10 Best Artificial Intelligence Software|artificial intelligence tools 5 nft games to earn money | Best NFT games for earn crypto Earn Money From Minting NFTs| How to mint NFT for free Top 10 Things You Need To Know About Python List | python lists functions 10 Popular PHP frameworks for web developers| best php frameworks 12 Tips On How To Become a Python Developer | python For beginner 12 Best Nodejs Frameworks for App Development in 2022 how to create google web stories, Steps to create web stories Top 10 Features in Angular 13 Every Developer Should Know | Angular 13 Features 10 Best Angular UI Libraries | angular ui components | angular Project 10 Best Web Development Frameworks in 2022 Frontend & Backend 18 Best Open-Source and Free Database Software | best database software for beginners Top 10+ Best Java IDEs & Online Java Compilers | best java ide for beginners top 10 besic to andvance java books |java books for beginer Top 5 Themes For Blogger, professional blogger theme download BEST Python Courses Online,Top 10 Courses to Learn Python in 2022 Top 13 python libraries for data science