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. 데이터를 공백으로 구분하기 위해 split() 사용
2. MIN_VALUE, MAX_VLAUE 사용하여 최솟값(min), 최댓값(max)을 할당
3. 분리한 문자열을 정수형으로 반환 (String -> int) parseInt() 사용
4. 최댓값과 최솟값 찾는 Math() 사용
class Solution {
public String solution(String s) {
String answer = "";
String[] sNum = s.split(" ");
int min = Integer.MAX_VALUE; // 최솟값 할당
int max = Integer.MIN_VALUE; // 최댓값 할당
for (int i=0; i<sNum.length; i++) {
int number = Integer.parseInt(sNum[i]); // String -> int 변환
min = Math.min(min, number);
max = Math.max(max, number);
}
answer = min +" "+ max;
return answer;
}
}
728x90
'programmers' 카테고리의 다른 글
프로그래머스 3단계 : 네트워크 (Java 자바) (0) | 2023.08.26 |
---|---|
프로그래머스 3단계 : 정수 삼각형 (Java 자바) (0) | 2023.08.26 |
프로그래머스 0단계 : 공백으로 구분하기 1 (0) | 2023.08.25 |
프로그래머스 0단계 : 수 조작하기 1 (0) | 2023.08.25 |
프로그래머스 0단계 : n의 배수 (0) | 2023.08.25 |