Blog

배열 두 배 만들기

날짜 2023-03-17
사용 언어 Java
문제 유형 반복문, 배열, Stream
정답률 89%
문제 URL https://school.programmers.co.kr/learn/courses/30/lessons/120809

문제 #

문제 설명 #

정수 배열 numbers가 매개변수로 주어집니다. numbers의 각 원소에 두배한 원소를 가진 배열을 return하도록 solution 함수를 완성해주세요.

제한사항 #
  • -10,000 ≤ numbers의 원소 ≤ 10,000
  • 1 ≤ numbers의 길이 ≤ 1,000

나의 풀이 #

class Solution {
    public int[] solution(int[] numbers) {
        int[] answer = new int[numbers.length];
        
        for(int i=0; i<numbers.length; i++) {
            answer[i] = numbers[i] * 2;
        }
        
        return answer;
    }
}
테스트 1 〉 통과 (0.02ms, 73MB)
테스트 2 〉 통과 (0.02ms, 76.6MB)
테스트 3 〉 통과 (0.01ms, 76.2MB)
테스트 4 〉 통과 (0.01ms, 68.5MB)
테스트 5 〉 통과 (0.01ms, 73.6MB)
테스트 6 〉 통과 (0.03ms, 75.6MB)
테스트 7 〉 통과 (0.04ms, 79MB)
테스트 8 〉 통과 (0.05ms, 78.4MB)
테스트 9 〉 통과 (0.04ms, 66.8MB)
테스트 10 〉 통과 (0.03ms, 73.1MB)

다른 사람의 풀이 #

import java.util.Arrays;
import java.util.ArrayList;

class Solution {
    public int[] solution(int[] numbers) {
        ArrayList<Integer> answer = new ArrayList<>();

        for(int num : numbers){
            answer.add(num*2);
        }

        return answer.stream().mapToInt(x->x).toArray();
    }
}
테스트 1 〉 통과 (2.65ms, 75.3MB)
테스트 2 〉 통과 (3.98ms, 75.5MB)
테스트 3 〉 통과 (2.00ms, 76.7MB)
테스트 4 〉 통과 (2.07ms, 77.7MB)
테스트 5 〉 통과 (2.88ms, 73.1MB)
테스트 6 〉 통과 (2.55ms, 77.5MB)
테스트 7 〉 통과 (2.46ms, 69.6MB)
테스트 8 〉 통과 (3.74ms, 79.7MB)
테스트 9 〉 통과 (2.60ms, 77.7MB)
테스트 10 〉 통과 (3.88ms, 70.7MB)
import java.util.Arrays;

class Solution {
    public int[] solution(int[] numbers) {
        return Arrays.stream(numbers).map(i -> i * 2).toArray();
    }
}
테스트 1 〉 통과 (2.94ms, 76.4MB)
테스트 2 〉 통과 (8.52ms, 80.1MB)
테스트 3 〉 통과 (1.94ms, 74.6MB)
테스트 4 〉 통과 (2.46ms, 72.9MB)
테스트 5 〉 통과 (3.63ms, 72.6MB)
테스트 6 〉 통과 (2.34ms, 78.7MB)
테스트 7 〉 통과 (2.24ms, 73.7MB)
테스트 8 〉 통과 (2.30ms, 74.6MB)
테스트 9 〉 통과 (2.85ms, 73.2MB)
테스트 10 〉 통과 (2.38ms, 79.6MB)

관련개념 학습 #