
import java.util.Arrays;
class Solution {
public String solution(String s) {
String[] arr = s.split(" ");
int[] arr1 = new int[arr.length];
for (int i =0; i < arr.length; i++){
arr1[i] = Integer.parseInt(arr[i]);
}
Arrays.sort(arr1);
String answer = "";
answer += arr1[0]+" "+arr1[arr.length-1];
return answer;
}
}
주어진 입출력 예가 숫자들이 너무 가지런해서
그냥 if 문으로 배열의 가장처음 요소, 마지막 요소를 비교하여 작은 요소가 앞에 나오게 했는데,
자꾸 통과를 못해가지고 생각해보니 입출력 예와 다르게 요소가 제대로 정렬 되지 않을 수 도 있다는 걸 알았다.
그래서 풀이과정은 이렇다
우선 주어진 문자열을 배열로 바꾸고
정수 배열로 다시 바꿔서
Array.sort로 오름차순으로 정렬해준다.
(String 배열은 Ascii코드 순으로 정렬해서인지 제대로 정렬이 안되어서 int 배열로 바꿔줘야만했다.)
이렇게 정렬해준 배열의 처음과 끝 요소를
문자열로 바꾸어 넣어주는데 사이에 공백 넣어서 요구 조건을 충족시켰다.
이상한데서 자꾸 실수해서 생각보다 오래걸림.
끝.
'배운 거 > Algorithm' 카테고리의 다른 글
| 백준 1064 평행사변형 JAVA (0) | 2022.08.14 |
|---|---|
| [Lv2. 해시 ] 폰켓몬 (0) | 2022.08.02 |
| [연습문제]핸드폰 번호 가리기 (0) | 2022.08.01 |
| [연습문제] 정수내림차순으로 배치하기 (0) | 2022.07.31 |
| [연습문제]행렬의 덧셈 (0) | 2022.07.31 |