파이썬 알고리즘 221번 | [백준 1083번] 소트 - 그리디

Yunny.Log ·2022년 8월 1일
0

Algorithm

목록 보기
226/318
post-thumbnail

221. 소트

1) 어떤 전략(알고리즘)으로 해결?

  • 그리디

2) 코딩 설명

  • s 가 허용하는 범위 내에서 가장 큰 수를 찾아서 현재 맨 앞에 자리에 갖다놓는 것.

<내 풀이>



<내 틀렸던 풀이, 문제점>

퍼센트도 못보고 틀려버렸던~


import sys
n = int(sys.stdin.readline().rstrip())
alis = list(map(int, sys.stdin.readline().
strip().split()))
s = int(sys.stdin.readline().rstrip())
for i in range(1,s+1) : 
    #print(alis[i-1], alis[i])
    idx=1
    while idx<n:
        if alis[idx]>alis[idx-1] : 
            tmp = alis[idx]
            alis[idx] = alis[idx-1]
            alis[idx-1] = tmp
            break
        else : idx+=1
for a in alis : print(a, end=" ")

<반성 점>

<배운 점>

0개의 댓글