C# 알고리즘 - 길이에 따른 연산
작성자 정보
- 마스터 작성
- 작성일
본문
[문제 설명]
정수가 담긴 리스트 num_list가 주어질 때, 리스트의 길이가 11 이상이면 리스트에 있는 모든 원소의 합을 10 이하이면 모든 원소의 곱을 return하도록 solution 함수를 완성해주세요.
[제한사항]
2 ≤ num_list의 길이 ≤ 20
1 ≤ num_list의 원소 ≤ 9
num_list의 원소를 모두 곱했을 때 2,147,483,647를 넘는 입력은 주어지지 않습니다.
[입출력 예]
[입출력 예 설명]
입출력 예 #1
리스트의 길이가 13이므로 모든 원소의 합인 51을 return합니다.
입출력 예 #2
리스트의 길이가 4이므로 모든 원소의 곱인 120을 return합니다.
[코드]
using System;
public class Solution {
public int solution(int[] num_list) {
int answer = 1;
if(num_list.Length >= 11){
for(int i =0; i<num_list.Length;i++){
answer += num_list[i];
}
}else{
for(int i =0; i<num_list.Length;i++){
answer *= num_list[i];
}
}
return answer = (num_list.Length >= 11) ? answer -1: answer;
}
}
[풀이]
1.매개변수의 길이 확인
if(num_list.Length >= 11) 혹은 else
2.길이에 따른 연산
for(int i =0; i<num_list.Length;i++){ answer += num_list[i];}
for(int i =0; i<num_list.Length;i++){ answer *= num_list[i];}
3.제출
return answer = (num_list.Length >= 11) ? answer -1: answer;
[주소]
https://school.programmers.co.kr/learn/courses/30/lessons/181879
해당 알고리즘 문제는 프로그래머스의 알고리즘 문제입니다.
관련자료
-
이전
-
다음