반응형
1. 최댓값과 최솟값
import java.util.*;
class Solution {
public String solution(String s) {
String answer = "";
String[] str = s.split(" ");
int[] numbers = new int[str.length];
for(int i=0; i<str.length; i++){
numbers[i] = Integer.parseInt(str[i]);
}
Arrays.sort(numbers);
int max = numbers[numbers.length-1];
int min = numbers[0];
answer += String.valueOf(min);
answer += " ";
answer += String.valueOf(max);
return answer;
}
}
<작성한 코드>
s의 숫자들을 공백을 기준으로 분리했다. 그 뒤 for문을 사용해서 numbers 배열에 str의 값들을 정수형으로 변환해서 넣어줬다. 넣어준 값들을 정렬하기 위해 Arrays.sort로 오름차순 정렬을 해줬고, max값에는 배열의 마지막값, min값에는 배열의 첫 번째 값을 넣어줬다. 그 뒤 answer에 min + " " + max값을 넣어주고 반환하였다.
2. JadenCase 문자열 만들기
class Solution {
public String solution(String s) {
String answer = "";
String[] str = s.split(" ");
for(int i=0; i<str.length; i++){
if(str[i].length() == 0){
answer += " ";
} else{
str[i] = str[i].toLowerCase();
str[i] = Character.toUpperCase(str[i].charAt(0)) + str[i].substring(1);;
answer += str[i];
answer += " ";
}
}
if(s.substring(s.length()-1, s.length()).equals(" ")){
return answer;
} else{
return answer.substring(0, answer.length()-1);
}
}
}
<작성한 코드>
s를 공백을 기준을 나눠줬다. 그 뒤 for문을 사용해서 str의 길이만큼 반복시켰고, str[i]의 길이가 0인 공백이 들어있는 상황에서는 answer에 공백을 추가해 줬다. 만약 아니라면 str [i] 전체를. toLowerCase()를 사용해서 소문자로 변경한 뒤 저장하고, str [i]. charAt(0)을 사용해서 str [i]의 첫 번째 문자를 대문자로 변경하고. substring(1)을 사용해서 뒤의 문자열을 이어 붙였다. 그 뒤 answer에 추가해 주고 마지막으로 공백을 추가했다. 반복문이 끝나고는 마지막 문자가 공백인지 확인했다. 공백이라면 그대로 answer을 반환하고 아니라면 공백을 제거해 주고 반환했다.
반응형
'프로그래머스 문제풀이 > 알고리즘 (JAVA)' 카테고리의 다른 글
남건욱's 공부기록