프로그래머스 코딩테스트(길이에 따른 연산, 문자열의 앞의 n글자, 자릿수 더하기)
<길이에 따른 연산>
문제 설명
정수가 담긴 리스트 num_list가 주어질 때, 리스트의 길이가 11 이상이면 리스트에 있는 모든 원소의 합을 10 이하이면 모든 원소의 곱을 return하도록 solution 함수를 완성해주세요.
풀이
class Solution {
public int solution(int[] num_list) {
int answer = 0;
if(num_list.length>=11){
for(int i:num_list){
answer+=i;
}
} else {
answer = 1;
for(int j:num_list){
answer*=j;
}
}
return answer;
}
}
다른 사람 풀이
import java.util.Arrays;
class Solution {
public int solution(int[] num_list) {
if (num_list.length > 10) return Arrays.stream(num_list).sum();
int answer = 1;
for (int n : num_list) answer *= n;
return answer;
}
}
<문자열의 앞의 n글자>
문제 설명
문자열 my_string과 정수 n이 매개변수로 주어질 때, my_string의 앞의 n글자로 이루어진 문자열을 return 하는 solution 함수를 작성해 주세요.
풀이
class Solution {
public String solution(String my_string, int n) {
return my_string.substring(0,n);
}
}
<자릿수 더하기>
문제 설명
정수 n이 매개변수로 주어질 때 n의 각 자리 숫자의 합을 return하도록 solution 함수를 완성해주세요
풀이
class Solution {
public int solution(int n) {
int answer = 0;
while(n!=0){
answer+=n%10;
n=n/10;
}
return answer;
}
}