반응형
프로그래머스 코딩 테스트 문제 "주사위 게임 3" 문제를 풀어 본다.
#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>
#include <math.h>
int solution(int a, int b, int c, int d) {
int answer = 0;
if(a == b && b == c && c == d) { // 메 주사위가 모두 같음
answer = 1111 * a;
}
else if(a == b && b == c && a != d) {
answer= (10 * a + d) * (10 * a + d);
}
else if(b == c && c == d && a != b) {
answer= (10 * b + a) * (10 * b + a);
}
else if(c == d && d == a && a != b) {
answer= (10 * c + b) * (10 * c + b);
}
else if(a == b && b == d && a != c) {
answer= (10 * b + c) * (10 * b + c);
}
else if(a == b && c == d) {
answer = (a + c) * abs(a - c);
}
else if(b == c && a == d) {
answer = (a + b) * abs(a - b);
}
else if(a == c && b == d) {
answer = (a + b) * abs(a - b);
}
else if(a == b && c != d) {
answer = c * d;
}
else if(b == c && a != d) {
answer = a * d;
}
else if(c == d && a != b) {
answer = a * b;
}
else if(a == d && b != c) {
answer = b * c;
}
else if(a == c && b != d) {
answer = b * d;
}
else if(b == d && a != c) {
answer = a * c;
}
else if(a != b && b != c && c != d) {
int min = a;
if(b < min) min = b;
if(c < min) min = c;
if(d < min) min = d;
answer = min;
}
return answer;
}
문제에서 주어진 주건에 따라 프로그래밍을 한다.
반응형



