Algorithm
[알고리즘] #8 평균 구하기 | 프로그래머스
K World
2022. 1. 20. 23:20
728x90
프로그래머스 평균구하기 알고리즘 문제
https://programmers.co.kr/learn/courses/30/lessons/12944
코딩테스트 연습 - 평균 구하기
정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요. 제한사항 arr은 길이 1 이상, 100 이하인 배열입니다. arr의 원소는 -10,000 이상 10,000 이하인 정수입니다. 입출력 예 arr
programmers.co.kr
문제 설명
정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요.
제한사항
- arr은 길이 1 이상, 100 이하인 배열입니다.
- arr의 원소는 -10,000 이상 10,000 이하인 정수입니다.
입출력 예
< 문제 풀이 >
정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요.
let arr = [1,2,3,4];
//let arr = [5,5];
solution(arr);
function solution(arr) {
let sum = 0;
let avr = 0;
//arr 에서 index 찾기
for (let index in arr){
//arr 엘리먼트들 다 더하기 (합계)
sum += arr[index];
// 합계 / 엘리먼트 개수 = 평균
avr = sum/arr.length;
}
return avr;
}
for in 문을 돌려서 arr 안의 값을 먼저 합쳐주자. 그러고난 후 합친 값을 합친 개수로 나눈다.
다른 사람들은 어떻게 풀었을까?
https://programmers.co.kr/learn/courses/30/lessons/12944/solution_groups?language=javascript
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
/ 문제가 개편되었습니다. 이로 인해 함수 구성이나 테스트케이스가 변경되어, 과거의 코드는 동작하지 않을 수 있습니다.
// 새로운 함수 구성을 적용하려면 [코드 초기화] 버튼을 누르세요. 단, [코드 초기화] 버튼을 누르면 작성 중인 코드는 사라집니다.
let arr = [1,2,3,4];
// let arr = [5,5];
solution(arr);
function solution(arr) {
return arr.reduce((acc, cur) => acc + cur, 0) /arr.length;
}
reduce 메서드로 누적값, 현재값 가져온다. 현재 값을 누적값에 계속 더해준다. 시작 초기값은 0이다. 누적값을 구했다면 arr.length 만큼 (arr.element 숫자 개수) 나누어준다.
728x90