HackerRank Python Solution - Strings - The Minion Game

  • Kevin and Stuart want to play 'The Minion Game'.
Game Rules:
  • Both players are given the same string, S.
  • Both players have to make substrings using the letters of the string S.
  • Stuart has to make words starting with consonants.
  • Kevin has to make words starting with vowels.
  • The game ends when both players have made all possible substrings.
Scoring:
  • A player gets a +1 point for each occurrence of the substring in the string S.
For Example:
  • String S = BANANA
  • Kevin's vowel beginning word = ANA
  • Here, ANA occurs twice in BANANA. Hence, Kevin will get 2 Points.
  • For a better understanding, see the image below:
HackerRank Python Solution - Strings - The Minion Game
  • Your task is to determine the winner of the game and their score.
Function Description:
  • Complete the minion_game in the editor below.
  • minion_game has the following parameters:
    • string: the string to analyze
  • Prints string: the winner's name and score, separated by a space on one line, or Draw if there is no winner
Input Format:
  • A single line of input containing the string S.
  • Note: The string S will contain only uppercase letters: [A-Z].
Constraints:
  • 0 < len(S) <= 106
Sample Input:

BANANA
Sample Output:

Stuart 12
Note: Vowels are only defined as AEIOU. In this problem, Y is not considered a vowel.

Solution:

def minion_game(string):
    kevin_score = 0
    stuart_score = 0
    vowels ='AEIOU'
    
    for i in range(len(string)):
        if string[i] in vowels: 
            kevin_score += (len(string)-i)
        else:
            stuart_score += (len(string)-i)
    
    if kevin_score > stuart_score:
        print("Kevin",kevin_score)
    elif kevin_score < stuart_score:
        print("Stuart",stuart_score)
    else:
        print("Draw")

if __name__ == '__main__':
    s = input()
    minion_game(s)
Disclaimer: The problem statement is given by hackerrank.com but the solution is generated by the Geek4Tutorial admin. If there is any concern regarding this post or website, please contact us using the contact form. Thank you!

No comments:

Post a Comment

You might also like

Deploy your Django web app to Azure Web App using App Service - F1 free plan

In this post, we will look at how we can deploy our Django app using the Microsoft Azure app service - a free plan. You need an Azure accoun...