-
카테고리
-
세부 분야
알고리즘 · 자료구조
-
해결 여부
미해결
역수열 문제 관련 질문
21.01.15 16:54 작성 조회수 69
0
안녕하세요 강사님 역수열 문제를 풀다가 제 코드가 논리상에 오류가 있는지와 효율성에 대해 알고 싶어서 질문드립니다.
저는 이전 강의에서 강사님께서 알려주신 deque를 이용해서 문제를 풀었습니다. deque를 선언하고 큰 수부터 내림차순으로 위치 배치를 수행했습니다. 특정 숫자와 특정숫자보다 큰 수의 갯수는 인덱스로 deque의 insert 연산을 이용하였는데요 deque의 insert연산을 사용하는 알고리즘이 정적 크기 list를 선언하고 배치하는 알고리즘과 효율성이 얼마나 차이가 나는지 알고 싶습니다. 또 제 코드의 논리가 맞는지도 알고 싶습니다
import sys
from collections import deque
def solution(n, lst):
dq = deque()
for i in range(n, 0, -1):
dq.insert(lst.pop(),i)
return " ".join(list(map(str, dq)))
if __name__ == "__main__":
sys.stdin = open("input9.txt", "r")
n = int(input())
lst = list(map(int, input().split()))
answer = solution(n, lst)
print(answer)
답변을 작성해보세요.
0
김태원
지식공유자2021.01.17
안녕하세요^^
효율성의 큰 차이는 없어 보입니다.
맞는 논리입니다. 먼저 들어간 숫자들이 현재 i보다 모두 크다는 논리로 위코드처럼 푸는 경우도 많습니다.
답변 1