최대 1 분 소요

문제 설명

프로그래머스 181879번 길이에 따른 연산

정수가 담긴 리스트 num_list가 주어질 때, 리스트의 길이가 11 이상이면 리스트에 있는 모든 원소의 합을 10 이하이면 모든 원소의 곱을 return하도록 solution 함수를 완성해주세요.

제한 사항

  • 2 ≤ num_list의 길이 ≤ 20
  • 1 ≤ num_list의 원소 ≤ 9
  • num_list의 원소를 모두 곱했을 때 2,147,483,647를 넘는 입력은 주어지지 않습니다.

입출력 예시

num_list result
[3, 4, 5, 2, 5, 4, 6, 7, 3, 7, 2, 2, 1] 51
[2, 3, 4, 5] 120

입출력 예 설명 1

  • 리스트의 길이가 13이므로 모든 원소의 합인 51을 return합니다.

입출력 예 설명 2

  • 리스트의 길이가 4이므로 모든 원소의 곱인 120을 return합니다.

코드 구현

Python

def solution(num_list):
    answer = 0

    if len(num_list) >= 11:
        for num in num_list:
            answer += num
    else:
        answer += 1

        for num in num_list:
            answer *= num

    return answer

Java

class Solution {
    public int solution(int[] num_list) {
        int answer = 0;

        if (num_list.length >= 11) {
            for (int num : num_list) {
                answer += num;
            }
        } else {
            answer += 1;
            
            for (int num : num_list) {
                answer *= num;
            }
        }

        return answer;
    }
}