leetcode 1678. Goal Parser Interpretation(python)

837 阅读1分钟

描述

You own a Goal Parser that can interpret a string command. The command consists of an alphabet of "G", "()" and/or "(al)" in some order. The Goal Parser will interpret "G" as the string "G", "()" as the string "o", and "(al)" as the string "al". The interpreted strings are then concatenated in the original order.

Given the string command, return the Goal Parser's interpretation of command.

Example 1:

Input: command = "G()(al)"
Output: "Goal"
Explanation: The Goal Parser interprets the command as follows:
G -> G
() -> o
(al) -> al
The final concatenated result is "Goal".

Example 2:

Input: command = "G()()()()(al)"
Output: "Gooooal"

Example 3:

Input: command = "(al)G(al)()()G"
Output: "alGalooG"

Note:

  • 1 <= command.length <= 100
  • command consists of "G", "()", and/or "(al)" in some order.

解析

根据题意,遍历字符串,只需要将 G 转换成 G ,() 转换成 o ,(al) 转换成 al 即可,容易实现。

解答

class Solution(object):
    def interpret(self, command):
        """
        :type command: str
        :rtype: str
        """
        res = ""
        i=0
        while i<len(command):
            if command[i] == 'G':
                res += 'G'
                i += 1
            elif command[i] == '(' and command[i+1] == ')':
                res += 'o'
                i += 2
            else :
                res += 'al'
                i += 4
        return res
        	      
		

运行结果

Runtime: 16 ms, faster than 88.21% of Python online submissions for Goal Parser Interpretation.
Memory Usage: 13.3 MB, less than 91.27% of Python online submissions for Goal Parser Interpretation.

原题链接:leetcode.com/problems/go…

您的支持是我最大的动力