Monday, July 6, 2020

Find a string-HackerRank Solution

Find a string-HackerRank Solution

In this challenge, the user enters a string and a substring. You have to print the number of times that the substring occurs in the given string. String traversal will take place from left to right, not from right to left.

NOTE: String letters are case-sensitive.


Input Format

The first line of input contains the original string. The next line contains the substring.

Constraints


Each character in the string is an ascii character.

Output Format

Output the integer number indicating the total number of occurrences of the substring in the original string.

Sample Input

ABCDCDC
CDC

Sample Output

2

Concept

Some string processing examples, such as these, might be useful.
There are a couple of new concepts:
In Python, the length of a string is found by the function len(s), where  is the string.
To traverse through the length of a string, use a for loop:

for i in range(0, len(s)):
    print (s[i])

A range function is used to loop over some length:

range (0, 5)

Here, the range loops over  to .  is excluded.


Find a string Solution-

def count_substring(string, sub_string):
    sum=0
    for i in range(0,len(string)):
      x=string.rfind(sub_string)  #find the position of the string from the right-hand   side
      if x!=-1:    #If sub_string is not found it will returns 0 else we will inc the sum by 1
        sum=sum+1
        string=string[0:x+1] # split the string from 0 index to x limit
    return sum  
if __name__ == '__main__':
    string = input().strip()
    sub_string = input().strip()
    
    count = count_substring(string, sub_string)
    print(count)
If you want to read more about rfind function-https://www.geeksforgeeks.org/python-string-rfind/

0 comments:

Post a Comment

Feel free to share your thoughts and suggestion...