Skip to content

Latest commit

 

History

History
29 lines (22 loc) · 1.4 KB

File metadata and controls

29 lines (22 loc) · 1.4 KB

😈 프로그래머스 최댓값과 최솟값

  • Date : 2021.10.10(일)
  • Time : 10분

문제

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

  • 제한사항

    • s에는 둘 이상의 정수가 공백으로 구분되어 있습니다.

코드 풀이

    num = list(map(int, s.split()))
    return str(min(num)) + " " + str(max(num))

: 일단 단순히 문자열로 들어온 n을 구분해줘야 했다. 문자열은 띄어쓰기로 구분되므로 split를 통해 띄어쓰기로 구분해주었다. 그런데 이것을 그냥 나누면 str 타입으로 저장이 되기 때문에 max min을 사용하기에 적합하지 않다. 그렇기 때문에 map 을 통해 int로 변경한 후 list에 저장해줬다. 그 다음 그 배열에서 최소, 최대를 min, max를 통해 찾으면 된다.

다른 방법

    num = list(map(int, s.split()))
    num.sort()
    return str(num[0]) + " " + str(num[-1])

: num을 크기별로 정렬해준다. 그러면 인덱스 0 은 최솟값, 마지막 인덱스는 최대값으로 정렬이 자동으로 된다.