코딩 테스트/Python

[프로그래머스 코딩테스트 연습] 1. 평균구하기

알밤바 2022. 2. 8. 15:39
728x90
반응형

이제 exploration 하는 날에 간단하게 1시간동안 코딩테스트를 하는 풀잎스쿨을 진행한다.

나같이 코딩을 처음 접하는 사람들에게는 정말 필요한 것이라고 생각된다. 오늘이 첫날이었는데, 생각보다 내가 아무것도 모르구나라는 생각을 했고, 또 지금 인공지능 모델을 만들게 아니라 파이썬부터 차근히 해야 하는 것이 아닌가라는 생각이 들었다.SQLD 자격증 시험 끝난 후엔 파이썬 공부를 하려고 했는데 코딩테스트를 매주 2회씩 해서 큰 도움이 될 것 같다!그래서 바로 풀잎 진행하고 난 후 포스팅을 하려고 한다. (하지만 익스 제출이 급하면 미루게 될지도,,,,💦)


 

 

코딩테스트 연습 - 평균 구하기

정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요. 제한사항 arr은 길이 1 이상, 100 이하인 배열입니다. arr의 원소는 -10,000 이상 10,000 이하인 정수입니다. 입출력 예 arr

programmers.co.kr

[평균 구하기]

1) 문제 설명

정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요.

 

2) 제한사항

- arr은 길이 1 이상, 100 이하인 배열입니다.

- arr의 원소는 -10,000 이상 10,000 이하인 정수입니다.

 

3) 입출력 예


1. 문제 접근 방식

처음에는 numpy로 접근을 하였다가 numpy를 활용하라는 내용이 없어서 배열끼리의 연산을 고민해보았다.

가장 기본이 되는 '합 / 개수'로 하였더니 통과가 되었다.

 

2. 풀이코드

def solution(arr):
    answer = sum(arr)/len(arr)
    return answer

3. 배운점

사실 처음엔 어떻게 해야 하는 지 막막했는데, 가장 기본을 생각해보았다. 그래서 위와 같은 코드를 작성하였다.

코딩테스트 이후 다른 사람들의 코드를 볼 수 있어서 확인해 보았더니 다양한 코드들이 많아서 놀랬다.

 

4. 다른 사람의 풀이 코드

def average(arr):
    if len(arr) == 0:
        return 0
        
    return sum(arr) / len(arr)

위와는 동일하게 합 / 개수를 사용했지만, if문을 추가로 사용했다. 

평균을 출력하지만 'arr의 길이가 0이면, 0을 출력하라'는 조건까지 추가로 걸었다.

 

5. numpy 사용

import numpy as np 

def solution(arr):
    answer = np.mean(arr)
    return answer

역시 numpy를 사용하면 매우 간단하다....mean 함수를 사용할 수 있다는 거...!


파이썬에 대해 더 열심히 공부해야겠다는 생각이 많이 든 코딩테스트였다,,,💪💪

앞으로도 홧팅🤸‍♀️🔥

728x90
반응형