목차
#1 조건에 맞게 수열 변환하기 1
문제 설명
정수 배열 arr가 주어집니다. arr의 각 원소에 대해 값이 50보다 크거나 같은 짝수라면 2로 나누고, 50보다 작은 홀수라면 2를 곱합니다. 그 결과인 정수 배열을 return 하는 solution 함수를 완성해 주세요.
제한 사항
- 1 ≤ arr의 길이 ≤ 1,000,000
- 1 ≤ arr의 원소의 값 ≤ 100
입출력 예
arr | result |
[1, 2, 3, 100, 99, 98] | [2, 2, 6, 50, 99, 49] |
입출력 예 설명
입출력 예 #1
- 1, 3은 50 미만의 홀수 이므로 2를 곱하고, 100, 98은 50 이상의 짝수이므로 2로 나눕니다.
- 나머지 값들은 변경 조건에 해당하지 않으므로 바꾸지 않습니다.
- 따라서 [2, 2, 6, 50, 99, 49]를 return 합니다.
#2 알고리즘 및 코드
public class Main {
public static void main(String[] args) {
int[] arr = {1, 2, 3, 100, 99, 98};
Solution sl = new Solution();
System.out.println(Arrays.toString(sl.solution(arr)));
}
}
class Solution {
public int[] solution(int[] arr) {
for(int i = 0; i < arr.length; i++){
if((arr[i] >= 50 && arr[i] % 2 == 0)){
arr[i] = arr[i] / 2;
} else if((arr[i] < 50 && arr[i] % 2 == 1)){
arr[i] = arr[i] * 2;
}
}
return arr;
}
}
- 문제를 읽어보면 조건이 보인다.
- 우선 arr 배열을 for문을 사용해서 순회하는데 각 원소들에 대해서...
50보다 크거나 같고 짝수라면 2로 나누고
50보다 작고 홀수라면 2로 곱한다.
'JAVA > 프로그래머스 코딩 기초 트레이닝' 카테고리의 다른 글
[프로그래머스, LV.0] 1로 만들기 (0) | 2024.01.05 |
---|---|
[프로그래머스, LV.0] 조건에 맞게 수열 변환하기 2 (1) | 2024.01.05 |
[프로그래머스, LV.0] 수열과 구간 쿼리 1 (0) | 2023.09.06 |
[프로그래머스, LV.0] 할 일 목록 (0) | 2023.09.06 |
[프로그래머스, LV.0] 5명씩 (2) | 2023.09.06 |