반응형
https://school.programmers.co.kr/learn/courses/30/lessons/181928
1. 문제 설명
정수가 담긴 리스트 num_list가 주어집니다. num_list의 홀수만 순서대로 이어 붙인 수와 짝수만 순서대로 이어 붙인 수의 합을 return하도록 solution 함수를 완성해주세요.
2. 접근 방법
1) 일단 if문으로 짝수, 홀수 나눠서 새로운 배열에 저장한다. 이떄, num_list에 있는 int 형을 String으로 변환하여 각각 짝수 문자열(even)과 홀수 문자열(odd)에 저장.
2) String으로 저장된 값을 Integer.parseInt()로 형변환 하여 두 배열의 합을 구한다.
class Solution {
public int solution(int[] num_list) {
int answer = 0;
String even = "";
String odd = "";
for(int i = 0; i < num_list.length; i++){
if(num_list[i] % 2 == 0){
even = even + Integer.toString(num_list[i]); //짝수 입력
}
else{
odd = odd + Integer.toString(num_list[i]); // 홀수 입력
}
}
answer = Integer.parseInt(even) + Integer.parseInt(odd);
return answer;
}
}
3. 회고
처음에는 Integer 객체를 쓰지 않고 구현하려고 했다. 근데 너무 복잡하게 생각했던 나머지, 그냥 String으로 변환해서 풀기로 했다. 굳이 10의 제곱수를 만들기 위해 2중 for문을 안 만들어도 됐었는데.. 역시 알고리즘 풀 때는 간단하게 생각해야 하는 것 같다.
반응형
'프로그래밍 > 알고리즘' 카테고리의 다른 글
백준(2720) - 세탁소 사장 동혁 Java (0) | 2023.09.05 |
---|---|
[프로그래머스] Lv0. n 번째 원소부터 Java (0) | 2023.07.01 |
[프로그래머스] Lv0. 문자열 겹쳐쓰기 Java (0) | 2023.06.29 |
[프로그래머스] Java 바탕화면 정리 (0) | 2023.06.27 |
[Java] Arrays.sort 사용하여 오름차순 정리 및 int 출력 (0) | 2023.06.27 |