반응형
문제 설명
정수가 담긴 리스트 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 |
입출력 예 설명
입출력 예 #1
홀수만 이어 붙인 수는 351이고 짝수만 이어 붙인 수는 42입니다. 두 수의 합은 393입니다.
입출력 예 #2
홀수만 이어 붙인 수는 573이고 짝수만 이어 붙인 수는 8입니다. 두 수의 합은 581입니다.
class Solution {
public int solution(int[] num_list) {
int answer = 0;
String odd = "";
String even = "";
for(int num : num_list) {
if(num % 2 == 0) even += String.valueOf(num);
else odd += String.valueOf(num);
}
answer = Integer.parseInt(even) + Integer.parseInt(odd);
return answer;
}
}
public static int solution(int[] num_list) {
int answer = 0;
String even = ""; // 짝수
String odd = ""; // 홀수
for(int num : num_list) {
if(num % 2 == 0) even += String.valueOf(num); // 짝수일때 even에 +
else odd += String.valueOf(num); // 그외 홀수일때 odd에 +
}
// 문자열로 연결된 짝수와 홀수를 정수형으로 변환하여 +
answer = Integer.parseInt(even)+Integer.parseInt(odd);
return answer;
}
for(int num : num_list) {
if(num % 2 == 0) even += String.valueOf(num); // 짝수일때 even에 +
else odd += String.valueOf(num); // 그외 홀수일때 odd에 +
}
- 향상된 for문으로 num_list의 원소들을 하나씩 가져와서 num 변수에 담는다
- 짝수일때 even에 더하는데, 숫자를 그대로 이어붙이기위해 String 타입으로 변환하여 +
- 홀수일때 odd에 더하는데, 숫자를 그대로 이어붙이기위해 String 타입으로 변환하여 +
- String타입인 even과 odd를 Int형으로 변환하여 더한 후 return
반응형
'코딩테스트 > JAVA' 카테고리의 다른 글
[프로그래머스/JAVA] 마지막 두 원소 (1) | 2024.04.17 |
---|---|
[프로그래머스/JAVA] 등차수열의 특정한 항만 더하기 (1) | 2024.04.17 |
[프로그래머스/JAVA] 원소들의 곱과 합 (1) | 2024.04.17 |
[프로그래머스/JAVA] 주사위 게임 2 (1) | 2024.04.17 |
[프로그래머스/JAVA] 코드 처리하기 (1) | 2024.04.17 |