본문 바로가기
코딩test공부/백준python

10431.줄세우기

by 왕방개 2024. 1. 2.

https://www.acmicpc.net/problem/10431

 

10431번: 줄세우기

초등학교 선생님 강산이는 아이들을 데리고 단체로 어떤 일을 할 때 불편함이 없도록 새로 반에 배정받은 아이들에게 키 순서대로 번호를 부여한다. 번호를 부여할 땐 키가 가장 작은 아이가 1

www.acmicpc.net

1.설명

문제를 보자마자 이거 무조건  sort 문제겠다 싶었슴다!! 학교에서 C++로 배웠던 linked list가 제일 먼저 떠올랐는데요?? 근데 linked list은 공간을  만들기 위해 한발짝 뒤로 물러가진 아니하진아니한가... 라는 생각이 들었습니다.(어떤 견제든 환영합니다!!)

따라서 sort 방법이랑 search 기법을 많이 배웠는데 딱히 완벽하게 정리를 안해봤다는 생각이 들어서 이번 기법은 sorting기법이니까 제가 썼던 sort 기법을 활용해 코드를 제작했습니다!

https://kingbk.tistory.com/18

 

기본정렬 알고리즘 (Sorting 기법 정리(Bubble,Selection,Quick,Heap,Insertion,Merge))

학교를 다니면서 알고리즘은 많이 배웠는데 제대로 써먹어본적이 없고 머리에 정리가 제대로 정립이 안된거 같아서 한번 정리해보려구요!!! 총 6가지 sorting 기법만 우선 정리해볼께용~~ 1. Bubble S

kingbk.tistory.com

저는 bubble sort을 선택했습니다!!

사실 문제 자체가 bubble sort 그 자체더라구요 ㅎㅎ

 

2.코드

def Bubble_Sort(li):
    cnt = 0
    for i in range(len(li) - 1, 0, -1):
        for j in range(i):
            if li[j] > li[j + 1]:
                li[j], li[j + 1] = li[j + 1], li[j]
                cnt += 1
    return cnt


N = int(input())

for i in range(N):
    res = list(map(int, input().split()))
    count, people = res[0], res[1:]
    print(count, Bubble_Sort(people))

정답!

'코딩test공부 > 백준python' 카테고리의 다른 글

1244.스위치 끄고 켜기  (2) 2024.01.04
8979.올림픽  (1) 2024.01.03
9655. 돌게임  (0) 2024.01.02
11723.집합  (1) 2023.12.28
2941.크로아티아 알파벳  (1) 2023.12.28