https://school.programmers.co.kr/learn/courses/30/lessons/120907

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

문자열 계산식 ( X 연산자 Y = Z) 으로 이루어 진 배열에서, 주어진 식이 정답이면 "O" 를, 틀리면 "X" 를 순서대로 담은 배열을 리턴해 주는 문제이다.

계산식이 항상 "숫자 연산자 숫자 = 숫자" 로 주어진다.

따라서 "=" 를 기준으로 좌변과 우변을 나눠 준 후, 다시 좌변을 공백 기준으로 숫자, 연산자, 숫자로 분리한다.

✅ 이렇게 해서 좌변의 연산 결과를 구한 후, 우변과 같으면 "O" , 다르면 "X" 를 담는다.

 

📝  내가 작성한 코드

def solution(quiz):
    answer = []
    value = 0
    
    for q in quiz:
        left, right = q.split(" = ")
        value1, op, value2 = left.split(" ")
        
        if op == "+":
            value = int(value1) + int(value2)
        else:
            value = int(value1) - int(value2)
            
        if value == int(right):
            answer.append("O")
        else:
            answer.append("X")
            
    return answer

+ Recent posts