[C#] 조건 문자열

Connected Brain·2025년 6월 27일

코딩 테스트

목록 보기
10/67

조건 문자열

문제 설명

문자열에 따라 다음과 같이 두 수의 크기를 비교하려고 합니다.

두 수가 n과 m이라면
">", "=" : n >= m
"<", "=" : n <= m
">", "!" : n > m
"<", "!" : n < m

두 문자열 ineqeq가 주어집니다.
ineq는 "<"와 ">"중 하나고, eq는 "="와 "!"중 하나입니다.
그리고 두 정수 nm이 주어질 때, nmineqeq의 조건에 맞으면 1을 아니면 0을 return하도록 solution 함수를 완성해주세요.

Ex)
ineq = "<", eq = "=", n = 20, m = 50
→ 20 <= 50 이라는 조건

풀이

public class StringConditionChecker
{
    public int Solution(string ineq, string eq, int n, int m) {
        int answer = 0;

        switch (ineq)
        {
            case "<":
                switch (eq)
                {
                    case "=":
                        if (n <= m) return 1;
                        else return 0;
                    case "!":
                        if (n < m) return 1;
                        else return 0;
                }
                break;
            case ">":
                switch (eq)
                {
                    case "=":
                        if (n >= m) return 1;
                        else return 0;
                    case "!":
                        if (n > m) return 1;
                        else return 0;
                }
                break;
        }
        return answer;
    }
    
}
  • ineq는 "<", ">"라는 2가지의 조건을 가지고 있으므로 이를 switch-case문을 사용해 구분해 주었다. 그리고 각각의 조건 내부에서 eq의 2가지 조건인 "!", "="에 따라 다시 조건을 분기해 각각에 맞는 조건문에서 nm의 값을 비교하도록 하였다.

0개의 댓글