Given a string str of n lowercase characters, the task is to count the number of substrings of str starting with character X and ending with character Y.
Input: str = "abbcaceghcak" x = 'a', y = 'c' Output: 5 abbc, abbcac, ac, abbcaceghc, aceghc Input: str = "geeksforgeeks" x = 'g', y = 'e' Output: 6
- Initialize two counters i.e. tot_count to count the total number of substrings and count_x to count the number of strings that start with X.
- Start traversing the string.
- If the current character is X then increment the count of count_x.
- If the current character is Y, it means a string ends at Y so increment the count of tot_count i.e.
tot_count = tot_count + count_x
It means that if there exists a Y then it will make a substring with all the X occurs before Y in the string. So, add the count of X to the total count.
- Return total count.
Below is the implementation of above approach:
Count = 5
- Count of substrings which contains a given character K times
- Number of substrings with count of each character as k
- Count substrings with each character occurring at most k times
- Ways to split string such that each partition starts with distinct character
- Print Kth character in sorted concatenated substrings of a string
- Maximum length palindromic substring such that it starts and ends with given char
- Replace every character of string by character whose ASCII value is K times more than it
- Longest Common Prefix using Character by Character Matching
- Find a string such that every character is lexicographically greater than its immediate next character
- Shortest distance to every other character from given character
- Replace every character of a string by a different character
- Count of sub-strings that contain character X at least once
- Count of sub-strings that do not consist of the given character
- Count occurrences of a character in a repeated string
- Program to count occurrence of a given character in a string
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.