algorithm

[프로그래머스 LV.2 최댓값과 최솟값]

선호하는 2023. 10. 31. 09:00

문제 링크:https://school.programmers.co.kr/learn/courses/30/lessons/12939

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

<문제>
문자열 s에는 공백으로 구분된 숫자들이 저장되어 있습니다. str에 나타나는 숫자 중 최소값과 최대값을 찾아 이를 "(최소값) (최대값)"형태의 문자열을 반환하는 함수, solution을 완성하세요.
예를들어 s가 "1 2 3 4"라면 "1 4"를 리턴하고, "-1 -2 -3 -4"라면 "-4 -1"을 리턴하면 됩니다.

 

<문제 풀이>
문자열 조작을 위한 함수들 중, split() 함수가 있다.
이걸 사용해서 리스트 요소를 구분하고, 요소마다 int()를 사용해 숫자형으로 바꿔준다.
그 뒤, min(), max() 함수를 사용해 최소값과 최대값을 찾아 출력하면 된다.

혹시 음수 기호를 인식하지 못하는 경우가 있을까 해서 찾아봤는데, 대부분 언어들, java, C, javascript 등등은 모두숫자형으로 변환할 때 음수 기호를 인식해 올바르게 출력해준다고 한다.

 

<소스코드>

def solution(s):
    tmp = list(map(int, s.split(' ')))
    return f'{min(tmp)} {max(tmp)}'