1부터 6까지 숫자가 적힌 주사위가 세 개 있습니다. 세 주사위를 굴렸을 때 나온 숫자를 각각 a, b, c라고 했을 때 얻는 점수는 다음과 같습니다.
세 숫자가 모두 다르다면 a + b + c 점을 얻습니다.
세 숫자 중 어느 두 숫자는 같고 나머지 다른 숫자는 다르다면 (a + b + c) × (a2 + b2 + c2 )점을 얻습니다.
세 숫자가 모두 같다면 (a + b + c) × (a2 + b2 + c2 ) × (a3 + b3 + c3 )점을 얻습니다.
세 정수 a, b, c가 매개변수로 주어질 때, 얻는 점수를 return 하는 solution 함수를 작성해 주세요.
int answer = 0; int result1 = a + b + c; int result2 = a*a + b*b + c*c; int result3 = a*a*a + b*b*b + c*c*c; // 숫자가 모두 다를때 (a + b + c) if (a!= b && a!= c && b!=c) { answer = result1; } // 두 숫자는 같고 하나는 다를때 (a + b + c) × (a2 + b2 + c2 ) if (a == b && a!=c || a == c && b!=c || b == c && a!=b) { answer = result1 * result2; } // 세 숫자가 모두 같다면 (a + b + c) × (a2 + b2 + c2 ) × (a3 + b3 + c3 ) if (a == b && a == c) { answer = result1 * result2 * result3; } return answer;
실수로 if문 안에 result 의 값을 넣어놓고 왜 계속 0이나오지? 라고생각함
ㅋㅋㅋㅋㅋㅋㅋ..제가 0이 되게 썼으니까요
int solution(int[] num_list) { int answer = 0; int result1 = 1; int result2 = 0; for(int i=0; i<num_list.length; i++){ // 모든 원소들의 곱 result1 *= num_list[i]; // 모든 원소들의 합의 제곱 (합) result2 += num_list[i]; } // 모든 원소들의 합의 제곱 (제곱) result2 *= result2; // 곱과 합의 제곱 비교 if(result1 < result2) { answer = 1; } else { answer = 0; } return answer; }
반복문 사용시 실행순서를 잘..^^ 생각하자~
홀수만 순서대로 이어 붙인 수와 짝수만 순서대로 이어 붙인 수의 합을 return
int answer = 0;
String even = "";
String odd = "";
//홀수만 순서대로 이어 붙인 수와 짝수만 순서대로 이어 붙인 수의 합을 return
for (int i=0; i<num_list.length; i++){
// 홀짝 판별
if(num_list[i] % 2 == 0){
// 각각 순서대로 이어 붙이기
even += num_list[i];
} else {
odd += num_list[i];
}
// 이어 붙인 수의 합 계산
if (!even.isEmpty() && !odd.isEmpty()){
answer =Integer.parseInt(even) + Integer.parseInt(odd);
}
}
return answer;