강의

멘토링

커뮤니티

Inflearn Community Q&A

onejunu's profile image
onejunu

asked

Introduction to Python Algorithm Problem Solving (Coding Test Preparation)

10. Inverse sequence (greedy)

이 풀이도 가능한가요?

Written on

·

249

9

n = int(input())

a =list(map(int,input().split()))

a = a[::-1]

ans=[]

for x in a:

        ans.insert(x,n)

        n -=1

#print(ans)

리스트를 먼저 뒤집은 다음에 가장 큰수 부터 차례 차례로 해당 인덱스에 인서트 해줘도 되는 것 같습니다. 

python코테 준비 같이 해요!

Answer 2

1

codingcamp님의 프로필 이미지
codingcamp
Instructor

지금 처럼 공부하면 굉장한 실력자가 될 것 같습니다. 

원래 역수열은 1부터 처리해도 되고, N부터 처리해도 됩니다. 원리는 같습니다.

 N부터 처리한다는 것은 ans에 이미 들어가 있는 숫자는 현재 처리하려는  숫자보다 모두 크다는 것이므로 현재 처리하려는 숫자가 x번 index로 insert되면 자기 앞에 무조건 큰 숫자가 x개 생기고 현재 숫자 다음에 처리되는 숫자들은 자기보다 작기때분에 어디에 insert 되도 상관없습니다.

오늘은 제가 컴퓨터로 작업을 하고 있어서 빠르게 답변하지만, 수업중이거나 다른 일을 하면 늦어질 수 도 있습니다.ㅜㅜ

0

onejunu님의 프로필 이미지
onejunu
Questioner

감사합니다 열심히하겠습니다

onejunu's profile image
onejunu

asked

Ask a question