조건 문자열 Lv. 0

박영준·2023년 6월 22일
0

코딩테스트

목록 보기
274/300
class Solution {
    public int solution(String ineq, String eq, int n, int m) {
        int answer = 0;
        return answer;
    }
}

해결법

방법 1

class Solution {
    public int solution(String ineq, String eq, int n, int m) {
        int answer = 0;
                
        if (ineq.equals("<") && eq.equals("=")) {
            if (n <= m) {
                answer = 1;
            }
        } else if (ineq.equals("<") && eq.equals("!")) {
            if (n < m) {
                answer = 1;
            }
        } else if (ineq.equals(">") && eq.equals("=")) {
            if (n >= m) {
                answer = 1;
            }
        } else {			// else if (ineq.equals(">") && eq.equals("!"))
            if (n > m) {
                answer = 1;
            }
        }
        
        return answer;
    }
}
  • 조건

    • ineq : < or >
    • eq : = or !

    총 4가지 경우의 수가 만들어진다

방법 2

class Solution {
    public int solution(String ineq, String eq, int n, int m) {
        boolean answer = false;

        switch(eq) {
            case "!": 
                switch(ineq) {
                    case "<":
                        answer = n < m;
                        break;
                    case ">":
                        answer = n > m;
                        break;
                }
                break;
                
            case "=":
                switch(ineq) {
                    case "<":
                        answer = n <= m;
                        break;
                    case ">":
                        answer = n >= m;
                        break;
                }
                break;
        }

        return answer? 1 : 0;
    }
}
  • 중첩 switch문
    • switch문으로 푸는 게 더 깔끔해 보인다.

조건 문자열 Lv. 0

profile
개발자로 거듭나기!

0개의 댓글