본문 바로가기
인간은 어떻게 배울까

[백준-파이썬] 10817번 세 수 (브론즈3)

by 개발하는 아인 2023. 6. 21.

 

1. 내 코드

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

for i in range(0, len(nums)):
    for j in range(i + 1, len(nums)):
        if nums[i] > nums[j]:
            nums[i], nums[j] = nums[j], nums[i]
            
print(nums[1])

저는 번거롭긴 하지만 버블소트로 짜봤어요.

배운거 기억 더듬어볼 겸...

 

 

2. 숏코드

print(sorted(input().split(),key=int)[1])

 

풀이 후 다른 분의 숏코드를 보고 놀랐습니다. 이런 방법이 있었군요!

 

sorted로 int 기준으로 배열값들을 순서대로 정렬한 후, 가운데 값인 [1] 가져오네요.

결과값이 string이긴 하지만 채점에는 문제가 되지 않는 것 같습니다.

 

sort 함수는 리스트명.sort( ) 형식으로 "리스트형의 메소드"​​이며 리스트 원본값을 직접 수정하는 반면,

sorted 함수는 sorted( 리스트명 ) 형식으로 "내장 함수"이며 리스트 원본 값은 그대로이고 정렬 값을 반환한다고 합니다.

 

숏코드는 볼때마다 충격입니다. ㅇ_ㅇ

그래도 좋은 공부가 되기에 자주 찾아보게 되죠. :D