문제 설명
정수가 담긴 리스트 num_list가 주어집니다. num_list의 홀수만 순서대로 이어 붙인 수와 짝수만 순서대로 이어 붙인 수와 짝수만 순서대로 이어 붙인 수의 합을 return 하도록 solution 함수를 완성해주세요.
제한사항
- 2 <= num_list의 길이 <= 10
- 1 <= num_list의 원소 <= 9
- num_list에는 적어도 한 개씩의 짝수와 홀수가 있습니다.
입출력 예
num_list | result |
[3, 4, 5, 2, 1] | 393 |
[5, 7, 8, 3] | 581 |
class Solution {
public int solution(int[] num_list) {
int answer = 0;
String odd = "";
String even = "";
for (int i = 0; i < num_list.length; i++) {
if (num_list[i] % 2 == 0) {
even += Integer.toString(num_list[i]);
} else {
odd += Integer.toString(num_list[i]);
}
}
answer = Integer.parseInt(even) + Integer.parseInt(odd);
return answer;
}
}
숫자를 붙일 odd와 even 변수를 만듭니다. for문이 num_list의 길이만큼 순회합니다. 만약 num_list의 i번째 인덱스를 2로 나눈 나머지가 0이라면, 즉 짝수라면 even 변수에 num_list의 i번째 인덱스를 더해줍니다. 다만 수학적 덧셈이 아닌, 문자열끼리 더하는 방식을 요구하므로 toString 메소드로 문자열로 변환 후 더해줍니다. 만약 홀수라면 odd 변수에 같은 방식으로 더해줍니다.
이렇게 구한 값을 다시 parseInt 메소드로 정수형으로 변경 후 짝수 변수와 홀수 변수를 더하여 answer에 할당합니다.
'프로그래머스 > Lv. 0(코딩 기초 트레이닝)' 카테고리의 다른 글
[프로그래머스 코딩테스트] 마지막 두 원소(Java) (0) | 2023.05.05 |
---|---|
[프로그래머스 코딩테스트] 수 조작하기 1(Java) (0) | 2023.05.05 |
[프로그래머스 코딩테스트] 주사위 게임 2(Java) (0) | 2023.05.05 |
[프로그래머스 코딩테스트] 등차수열의 특정한 항만 더하기(Java) (0) | 2023.05.05 |
[프로그래머스 코딩테스트] 특별한 이차원 배열 1(Java) (1) | 2023.05.04 |