Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Nest.js
- Dinosaur
- 게임
- cookie
- dfs
- Python
- 공룡게임
- OCR
- flask
- 정렬
- Sequelize
- JavaScript
- class
- Queue
- AWS
- game
- react
- jest
- Bull
- 자료구조
- MySQL
- Express
- nodejs
- GIT
- TypeScript
- MongoDB
- nestjs
- typeORM
- mongoose
Archives
- Today
- Total
포시코딩
[프로그래머스][Lv.0] OX퀴즈 본문
728x90
문제
https://school.programmers.co.kr/learn/courses/30/lessons/120907
내 풀이
def solution(quiz):
answer = []
for i in range(len(quiz)):
a = quiz[i].split(" ")
if a[1]=='+' and int(a[0])+int(a[2])==int(a[4]):
answer.append('O')
elif a[1]=='-' and int(a[0])-int(a[2])==int(a[4]):
answer.append('O')
else:
answer.append('X')
return answer
마침 신찬수 교수님의 스택을 이용한 계산기 구현하는 강의를 보다가 문제를 풀게 됐는데
그걸 보고 할까 하다가 문제를 보니
a ? b = c 와 같이 정해져있는 수식에다 기호는 '+', '-' 두 개 뿐이어서 바로 풀어도 풀리겠다 싶었다.
split을 통해 각 숫자와 기호를 배열에 넣어줬고 위치는 정해져 있으니
'+'일 때랑 '-'일 때를 구분해 계산해서 맞으면 'O' 틀리면 'X'를 반환하면 되는 간단한 문제였다.
시간복잡도
시간복잡도는 O(N)
다른 풀이
다른 풀이들은 내 방식과 비슷하거나 다르면 eval() 함수를 사용해 텍스트 형태의 파라미터 값을 변형해 사용했는데
eval()을 쓰는 방법은 편법을 쓰는 기분이기도 하고 현업에서도 보안상의 위험 때문에
사용을 자제하는 함수기도 해서 패스하기로 했다.
728x90
'자료구조알고리즘 > 문제풀이' 카테고리의 다른 글
[프로그래머스][Lv.0] 평행 - 작성중 (0) | 2022.12.19 |
---|---|
[프로그래머스][Lv.0] 안전지대 (0) | 2022.12.18 |
[프로그래머스][Lv.0] 분수의 덧셈 (0) | 2022.12.16 |
[프로그래머스][Lv.0] 겹치는 선분의 길이* (0) | 2022.12.16 |
[신찬수] 괄호 맞추기 (0) | 2022.12.16 |