문자열
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" |
import java.util.*;
class Solution {
public String solution(String s) {
String answer = "";
StringTokenizer st = new StringTokenizer(s, " ");
int max = -10000, min = 10000;
while(st.hasMoreTokens()){
String str = st.nextToken();
int num = Integer.parseInt(str);
if(max < num)
max = num;
if(min > num)
min = num;
}
answer = min + " " + max;
return answer;
}
}
💡 문자열 s에서 공백으로 구분되어 있는 각각의 숫자들을 StringTokenizer로 구분해 토큰 개수만큼 반복문을 실행해
max
보다 크면 최댓값으로 설정해 주고,min
보다 작으면 최솟값으로 설정해 준다
레벨 2 치고는 쉬웠던 문제인 것 같다... 포스팅 안 하려다가 레벨 2 문제 처음 풀어 본 것에 의의를 두고자 올려 봅니다 🧐