정수 배열 numbers
가 매개변수로 주어집니다. numbers
의 원소의 평균값을 return하도록 solution 함수를 완성해주세요.
numbers
의 원소 ≤ 1,000numbers
의 길이 ≤ 100numbers | result |
---|---|
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] | 5.5 |
[89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99] | 94.0 |
class Solution {
public double solution(int[] numbers) {
double answer = 0;
for(int i=0; i<numbers.length;i++){
answer += numbers[i];
}
return answer/numbers.length;
}
}
다른 사람의 풀이를 보니 아래 처럼 Arrays.stream 같은 stream 문법을 많이 사용하는 것을 알 수 있었다.
낮은 레벨에서는 로직을 차근차근 고민해보는게 도움이 될 것 같지만 레벨이 높아지면 이러한 메서드를 이용하면 확실히 속도나 간편함에 있어 훨씬 이득이겠다는 생각이 들었다. 공부해둬야 겠음!
import java.util.Arrays;
class Solution {
public double solution(int[] numbers) {
return Arrays.stream(numbers).average().orElse(0);
}
}
출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges