Today I Learned

프로그래머스 코딩테스트 Lv1 - 파이썬

by Holly Yoon

1. 평균구하기  (문제 링크)

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

[1,2,3,4] 2.5
[5,5] 5
def solution(arr):
    answer = 0
    answer = sum(arr)/len(arr)
    return answer

 

 

2. 짝수와 홀수  (문제 링크)

문제 설명 : 정수 num이 짝수일 경우 "Even"을 반환하고 홀수인 경우 "Odd"를 반환하는 함수, solution을 완성해주세요.
제한 조건 : num은 int 범위의 정수입니다. / 0은 짝수입니다.
입출력 예

3 "Odd"
4 "Even"
def solution(num):
    if num%2 == 0:
        answer = 'Even'
    else :
        answer = 'Odd'
    return answer

 

 

3. 약수의 합 (문제 링크)

문제 설명 : 정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요.
제한 사항 : n은 0 이상 3000이하인 정수입니다.
입출력 예 :

12 28
5 6
더보기

입출력 예 #1
12의 약수는 1, 2, 3, 4, 6, 12입니다. 이를 모두 더하면 28입니다.

입출력 예 #2
5의 약수는 1, 5입니다. 이를 모두 더하면 6입니다.

#풀이1
def solution(n):
    answer = 0
    sum = 0
    
    for i in range(1, n+1):
        if n % i == 0:
            sum += i
        else:
            continue
        answer = sum
    
    return answer
 
#풀이2 
 def solution(num):
    return sum([i for i in range(1,num+1) if num%i==0])

 

 

4. 자릿수 더하기 (문제 링크)

문제 설명 : 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요. 예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다.
제한사항 : N의 범위 : 100,000,000 이하의 자연수
입출력 예

123 6
987 24
입출력 예 설명
더보기

입출력 예 #1
문제의 예시와 같습니다.

입출력 예 #2
9 + 8 + 7 = 24이므로 24를 return 하면 됩니다.

#풀이1
def solution(n):
    return sum(map(int,str(n)))
    
#풀이2 
def solution(n):
	if n<10:
    	return n;
    return (n%10) + solution(n//10)
  • 풀이2는 각 자리수를 10, 10**2, 10**3 등으로 나눈 나머지들의 합을 더하는 방법입니다.

 

 

블로그의 정보

Study Log by Holly

Holly Yoon

활동하기