programmers12 [프로그래머스][파이썬] #06. 배열 만들기 4 📝 문제 ✔️ 나의 풀이 def solution(arr): stk = [] # i 초기값을 0으로 설정 i = 0 # i가 arr 길이보다 작으면 while i arr[i]일 때, else: stk.pop() return stk 🔎 다른 사람의 풀이 def solution(arr): stk = [] i = 0 while i < len(arr): if not stk: stk.append(arr[i]) i += 1 else: if stk[-1] < arr[i]: stk.append(arr[.. 2023. 7. 24. [프로그래머스][파이썬] #05. 수열과 구간 쿼리 2 📝 문제 ✔️ 나의 풀이 def solution(arr, queries): answer = [] for query in queries: s, e, k = query[0], query[1], query[2] target_range = arr[s:e+1] filtered_values = [x for x in target_range if x > k] if filtered_values: answer.append(min(filtered_values)) else: answer.append(-1) return answer 🔎 다른 사람의 풀이 def solution(arr, queries): answer = [] for s, e, k in queries: tmp = [] for x in arr[s:e+1]: if x.. 2023. 7. 21. [프로그래머스][파이썬] #04. 수 조작하기2 📝 문제 ✔️ 나의 풀이 def solution(numLog): num = numLog[0] result = "" for i in range(1, len(numLog)): diff = numLog[i] - numLog[i-1] if diff == 1: result += "w" elif diff == -1: result += "s" elif diff == 10: result += "d" elif diff == -10: result += "a" return result 🔎 다른 사람의 풀이 def solution(log): res='' joystick=dict(zip([1,-1,10,-10],['w','s','d','a'])) for i in range(1,len(log)): res+=joystick[log.. 2023. 7. 21. [프로그래머스][파이썬] #03. 등차수열의 특정한 항만 더하기 📝 문제 ✔️ 나의 풀이 def solution(a, d, included): n = len(included) result = 0 for i in range(n): if included[i]: result += a + (i * d) return result 🔎 다른 사람의 풀이 def solution(a, d, included): result = 0 for i, x in enumerate(included): if x: result += a + (i * d) return result ✏️ 배운점 기본적으로 나의 경우 문제 상황을 번역하여 그대로 풀어 쓰는 스타일이나 내장함수 Enumerate를 활용하여 조금 더 간결하게 코드를 작성한 풀이가 좋았다. 2023. 7. 19. 이전 1 2 3 다음