취준일기

[DF913] 파이썬 기초 훈련 10제_3번문제

둉영 2020. 5. 2. 12:46

 

다핏에서 제공하는 데이터 사이언스 문제 중 오늘은 Python 기초 훈련 10제 중 3번째 문제를 풀 차례입니다.

N개의 데이터를 입력받아서 두 번째로 큰수를 출력하는 알고리즘을 완성하는 문제입니다.

 

처음 문제를 받았을 때, 알고리즘을 만들기 위해서 

첫번째로 생각해 볼것은 input 데이터를 어떻게 받을 것인가

두번째, 입력받은 데이터의 크기 정렬

세번째, 정렬된 데이터에서 두번째 원소를 출력하기 

이렇게 생각해 볼 수 있을 것 같았습니다. 

 

그럼 input 데이터를 입력받아 보겠습니다. 지난번에 풀었던 2번 문제와 유사한 것 같아요.

 

파이썬으로 명령행 인자를 사용해서 여러개의 인자를 받아보겠습니다.

 

명령행 인자, sort에 대한 정보는 아래 포스팅을 확인해주세요.

 

 

파이썬 명령행 인자 *args, **kwargs

argument 인자 parameter 파라미터 *args 는 무엇인가요? *args 는 *arguments의 줄임말 입니다. 별표시 asterisk * 가 하나있으면 그 뒤에 args가 아닌 names, ages 등등 사용자가 네임을 변경해서 사용할 수 있..

hi-datalab.tistory.com

 

 

Python sort() 와 sorted() 차이점과 파이썬 정렬하기

sort list 만을 위한 정렬 리스트만을 위한 메소드 sorted 어떤 형태도 정렬 가능 내장함수 => 새로운 리스트 형태로 출력 >>> sorted((1,5,3)) [1,3,5] >>> sorted([1,7,4]) [1,4,7] >>> a = [1,3,7,4] >>> a.sor..

hi-datalab.tistory.com

def second_word(*words):
	
    
    

print(second_word(1,2,5,4,5,3,5)

전체 틀은 만들었는데 이제 second_word 안에 들어갈 알고리즘을 코딩해야 해요.

입력받은 데이터의 크기 정렬은 제어문 for문을 이용해서 식을 만드는 방법과 내장함수 sort를 이용한 정렬이 있을 것 같았어요.

이때 자료형이 튜플로 데이터가 입력되기 때문에 두개의 방식을 사용하기 위해서는 입력데이터의 형변환이 필요하다고 생각했습니다.

 

그리고 중복되는 값을 없애주기 위해서 자료형을 set으로 바꿔서 진행해야된다고 생각했습니다.

 

 

1. sort 이용하기

 

 

 

2. sorted 이용하기

 

 

두개다 동일하게 4를 출력합니다.