본문 바로가기
매일매일 코딩연습!/프로그래머스

[코딩연습15일차] 프로그래머스 : 최댓값과 최솟값 / python & java

by k-bonnie 2021. 2. 18.
728x90

문제설명

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

제한 조건

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

입출력 예

s return
1 2 3 4 1 4
-1 -2 -3 -4 -4 -1
-1 -1 -1 -1

내 풀이>>

  1. 일단 문자열로 주어졌기 때문에, slicing한 뒤에 list로 저장해준다.
  2. 여기서 max, min 찾아서
  3. print해주면 끝!
def solution(s):
    answer = ''
    minmax = list(map(int, s.split(' ')))
    return str(min(minmax)) + ' ' + str(max(minmax))

 

java >> 

public class GetMinMaxString {
    public String getMinMaxString(String str) {
        String[] tmp = str.split(" ");
        int min, max, n;
        min = max = Integer.parseInt(tmp[0]);
        for (int i = 1; i < tmp.length; i++) {
                n = Integer.parseInt(tmp[i]);
            if(min > n) min = n;
            if(max < n) max = n;
        }

        return min + " " + max;

    }

    public static void main(String[] args) {
        String str = "1 2 3 4";
        GetMinMaxString minMax = new GetMinMaxString();
        //아래는 테스트로 출력해 보기 위한 코드입니다.
        System.out.println("최대값과 최소값은?" + minMax.getMinMaxString(str));
    }
}