반응형
문제 출처
https://school.programmers.co.kr/learn/courses/30/lessons/120907
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
✅ 문제 개요
수학 수식들이 "X [연산자] Y = Z" 형태의 문자열로 주어진다.
이 수식이 맞으면 "O", 틀린 경우 "X"로 표시한 리스트를 만들어야 한다.
예를 들어:
["3 - 4 = -3", "5 + 6 = 11"] → ["X", "O"]
🔍 예시
수식 결과
| "3 - 4 = -3" | X |
| "5 + 6 = 11" | O |
| "5 - 15 = 63" | X |
🧠 해결 방법
🔹 1. 수식 분리
문자열을 " "(공백) 기준으로 나누면 아래처럼 조각으로 작성되어요:
"3 - 4 = -3" → ["3", "-", "4", "=", "-3"]
이중 필요한 값들을 가져오어서 비교하면 돼요.
🔹 2. 계산 수행
- 왼쪽 연산: X, 연산자, Y → 실제 계산 결과 만들기
- 오른쪽 값: Z → 결과 값
- 계산해서 비교: X 연산 Y == Z면 "O", 아니면 "X"
💻 최종 코드
def solution(quiz):
answer = []
for q in quiz:
x, op, y, _, z = q.split()
x = int(x)
y = int(y)
z = int(z)
if op == '+':
result = x + y
else:
result = x - y
if result == z:
answer.append("O")
else:
answer.append("X")
return answer
예제 테스트
입력:
quiz = ["3 - 4 = -3", "5 + 6 = 11"]
solution(quiz)
출력:
["X", "O"]
입력:
quiz = ["19 - 6 = 13", "5 + 66 = 71", "5 - 15 = 63", "3 - 1 = 2"]
solution(quiz)
출력:
["O", "O", "X", "O"]
📌 핵심 요약
항목 설명
| 입력 형태 | "X [연산자] Y = Z" |
| 처리 방식 | 문자열을 공백으로 나누고 계산 수행 |
| 해결 기능 | split(), int(), if 조건문 |
| 결과 형식 | 맞으면 "O", 틀리면 "X" |
반응형
'IT > CodingTest' 카테고리의 다른 글
| [차근차근 풀기] [python] 백준 2108 - 통계학 (0) | 2025.11.09 |
|---|---|
| [programmers] '겹치는 선분의 길이' 문제 해설 및 정답코드 (2) | 2025.04.29 |
| [programmers] '등수 매기기' 문제 해설 및 정답코드 (0) | 2025.03.27 |
| [programmers] '영어가 싫어요' 문제 해설 및 정답코드 (0) | 2025.03.25 |
| [programmers] '삼각형의 완성조건(2)' 문제 해설 및 정답코드 (0) | 2025.03.25 |
| [programmers] '공 던지기' 문제 해설 및 정답코드 (0) | 2025.03.20 |
| [programmers] '2차원으로 만들기' 문제해설 (0) | 2025.03.18 |
| [programmers] '주사위의 개수' 문제해설 (1) | 2025.03.17 |
댓글