Sunday, October 6, 2024
Google search engine
HomeData Modelling & AIPrint the string after the specified character has occurred given no. of...

Print the string after the specified character has occurred given no. of times

Given a string, a character, and a count, the task is to print the string after the specified character has occurred count number of times. Print “Empty string” in case of any unsatisfying conditions. (Given character is not present, or present but less than given count, or given count completes on last index). If given count is 0, then given character doesn’t matter, just print the whole string.

Examples: 

Input  :  str = "This is demo string" 
          char = i,    
          count = 3
Output :  ng

Input :  str = "neveropen"
         char = e, 
         count = 2
Output : ksforneveropen

Asked in: Oracle

Recommended Practice

Implementation: 

  1. Start traversing the string.
    • Increment occ_count if current char is equal to given char.
    • Get out of the loop, if occ_count becomes equal to given count.
  2. Print the string after the index till the string gets traversed in the loop. 
  3. If index has reached the last, then print “Empty string”.

Implementation:

C++




// C++ program for above implementation
#include <iostream>
using namespace std;
  
// Function to print the string
void printString(string str, char ch, int count)
{
    int occ = 0, i;
  
    // If given count is 0
    // print the given string and return
    if (count == 0) {
        cout << str;
        return;
    }
  
    // Start traversing the string
    for (i = 0; i < str.length(); i++) {
  
        // Increment occ if current char is equal
        // to given character
        if (str[i] == ch)
            occ++;
  
        // Break the loop if given character has
        // been occurred given no. of times
        if (occ == count)
            break;
    }
  
    // Print the string after the occurrence
    // of given character given no. of times
    if (i < str.length() - 1)
        cout << str.substr(i + 1, str.length() - (i + 1));
  
    // Otherwise string is empty
    else
        cout << "Empty string";
}
  
// Drivers code
int main()
{
    string str = "neveropen for neveropen";
    printString(str, 'e', 2);
    return 0;
}


Java




// Java program for above implementation
  
public class GFG 
{
    // Method to print the string
    static void printString(String str, char ch, int count)
    {
        int occ = 0, i;
       
        // If given count is 0
        // print the given string and return
        if (count == 0) {
            System.out.println(str);
            return;
        }
       
        // Start traversing the string
        for (i = 0; i < str.length(); i++) {
       
            // Increment occ if current char is equal
            // to given character
            if (str.charAt(i) == ch)
                occ++;
       
            // Break the loop if given character has
            // been occurred given no. of times
            if (occ == count)
                break;
        }
       
        // Print the string after the occurrence
        // of given character given no. of times
        if (i < str.length() - 1)
            System.out.println(str.substring(i + 1));
       
        // Otherwise string is empty
        else
            System.out.println("Empty string");
    }
      
    // Driver Method
    public static void main(String[] args)
    {
        String str = "neveropen for neveropen";
        printString(str, 'e', 2);
    }
}


Python3




# Python3 program for above implementation
  
# Function to print the string
def printString(str, ch, count):
    occ, i = 0, 0
  
    # If given count is 0
    # print the given string and return
    if (count == 0):
        print(str)
  
    # Start traversing the string
    for i in range(len(str)):
  
        # Increment occ if current char 
        # is equal to given character
        if (str[i] == ch):
            occ += 1
  
        # Break the loop if given character has
        # been occurred given no. of times
        if (occ == count):
            break
  
    # Print the string after the occurrence
    # of given character given no. of times
    if (i < len(str)- 1):
        print(str[i + 1: len(str) - i + 2])
  
    # Otherwise string is empty
    else:
        print("Empty string")
  
# Driver code
if __name__ == '__main__':
    str = "neveropen for neveropen"
    printString(str, 'e', 2)
  
# This code is contributed
# by 29AjayKumar


C#




// C# program for above implementation
using System;
  
public class GFG {
      
    // Method to print the string
    static public void printString(string str,
                           char ch, int count)
    {
        int occ = 0, i;
      
        // If given count is 0
        // print the given string
        // and return
        if (count == 0) {
            Console.WriteLine(str);
            return;
        }
      
        // Start traversing the string
        for (i = 0; i < str.Length; i++)
        {
      
            // Increment occ if current
            // char is equal to given 
            // character
            if (str[i] == ch)
                occ++;
      
            // Break the loop if given
            // character has been occurred
            // given no. of times
            if (occ == count)
                break;
        }
      
        // Print the string after the
        // occurrence of given character
        // given no. of times
        if (i < str.Length - 1)
            Console.WriteLine(str.Substring(i + 1));
      
        // Otherwise string is empty
        else
            Console.WriteLine("Empty string");
    }
      
    // Driver Method
    static public void Main()
    {
        string str = "neveropen for neveropen";
        printString(str, 'e', 2);
    }
}
  
// This code is contributed by vt_m.


Javascript




<script>
  
// JavaScript program for above implementation
  
// Method to print the string
function printString(str, ch , count)
{
    var occ = 0, i;
   
    // If given count is 0
    // print the given string and return
    if (count == 0) {
        document.write(str);
        return;
    }
   
    // Start traversing the string
    for (i = 0; i < str.length; i++) {
   
        // Increment occ if current char is equal
        // to given character
        if (str.charAt(i) == ch)
            occ++;
   
        // Break the loop if given character has
        // been occurred given no. of times
        if (occ == count)
            break;
    }
   
    // Print the string after the occurrence
    // of given character given no. of times
    if (i < str.length - 1)
        document.write(str.substring(i + 1));
   
    // Otherwise string is empty
    else
        document.write("Empty string");
}
  
// Driver Method
var str = "neveropen for neveropen";
printString(str, 'e', 2);
  
// This code is contributed by Amit Katiyar 
  
</script>


Output

ks for neveropen

Time complexity : O(n) 
Auxiliary Space : O(1)

This article is contributed by Sahil Chhabra. If you like neveropen and would like to contribute, you can also write an article using write.geeksforgeeks.org or mail your article to review-team@geeksforgeeks.org. See your article appearing on the neveropen main page and help other Geeks.

Feeling lost in the world of random DSA topics, wasting time without progress? It’s time for a change! Join our DSA course, where we’ll guide you on an exciting journey to master DSA efficiently and on schedule.
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 neveropen!

Dominic Rubhabha-Wardslaus
Dominic Rubhabha-Wardslaushttp://wardslaus.com
infosec,malicious & dos attacks generator, boot rom exploit philanthropist , wild hacker , game developer,
RELATED ARTICLES

Most Popular

Recent Comments