주사위 게임 3

코딩테스트 2025. 9. 20. 10:51
반응형

프로그래머스 코딩 테스트 문제 "주사위 게임 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;
}

문제에서 주어진 주건에 따라 프로그래밍을 한다.

반응형

'코딩테스트' 카테고리의 다른 글

옹알이 (1)  (0) 2025.09.20
수열과 구간 쿼리 2  (0) 2025.09.20
리스트 자르기  (0) 2025.09.20
글자 지우기  (0) 2025.09.20
접미사 배열  (0) 2025.09.20
Posted by 세상을 살아가는 사람
,