티스토리 뷰
[문제 링크]
https://school.programmers.co.kr/learn/courses/30/lessons/42748
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
[문제 고민]
- 그냥 문제의 흐름대로 풀어주면 되는거 아닐까? 라고 생각해서
아래와 같이 지저분한.....
[핵심 개념]
- 2차원 배열
- for 문 이용
- sort() / sorted () 차이 - 전자는 원본을 바꿔주고, 후자는 원본을 바꿔주지 않음 (동작 원리 like print()..)
[추가 끄적]
- 쉽다고 생각했는데 생각보다 잔잔바리 오류가 많아서 꽤 걸렸다;
- for문을 그렇게나 많이 사용하는데도 아직도 삐걱될 때 있음.. 특히 코드의 흐름에 따라 변수 할당과 indentation 위치가 매우 중요함..
[작성 코드]
def solution(array, commands):
answer = []
for i in range(len(commands)):
sub_answer = []
idx = commands[i][2]-1
start = commands[i][0]-1
ends = commands[i][1]
for x in range(start, ends):
sub_answer.append(array[x])
sub_answer.sort()
answer.append(sub_answer[idx])
return answer
'Tech Stacks, Concepts > Algorithm' 카테고리의 다른 글
[프로그래머스] Lv2. 최솟값 만들기 (파이썬) (0) | 2023.04.15 |
---|---|
[프로그래머스] Lv2. 올바른 괄호 (파이썬) / Stack (스택) (0) | 2023.04.14 |
[프로그래머스] Lv1. 크기가 작은 부분문자열 (1) | 2023.04.14 |
[프로그래머스] Lv2. 카펫 (파이썬) / 완전탐색 (0) | 2023.04.13 |
[프로그래머스] Lv2. 짝지어 제거하기 (파이썬) / Stack (스택) 개념 (0) | 2023.04.12 |