본문 바로가기
PS/BOJ

[자바] 백준 5656 - 비교 연산자 (boj java)

by Nahwasa 2022. 6. 18.

문제 : boj5656

 

  입력으로 들어온 문자열을 공백을 기준으로 int, String, int로 파싱한다. 중간의 String 부분이 'E' 라면 끝내면 된다. 이외의 경우 중앙의 String 부분에 따라 똑같은 비교연산자를 수행해주면 된다.

 

코드 : github

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Main {
    private boolean getResult(int a, int b, String op) {
        switch (op) {
            case ">":   return a>b;
            case ">=":  return a>=b;
            case "<":   return a<b;
            case "<=":  return a<=b;
            case "==":  return a==b;
            case "!=":  return a!=b;
        }
        return false;
    }
    private void solution() throws Exception {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String s = "";
        StringBuilder sb = new StringBuilder();
        int t = 1;
        while (true) {
            StringTokenizer st = new StringTokenizer(br.readLine());
            int a = Integer.parseInt(st.nextToken());
            String op = st.nextToken();
            int b = Integer.parseInt(st.nextToken());
            if (op.equals("E")) break;
            sb.append(String.format("Case %d: %s\n", t++,getResult(a, b, op)?"true":"false"));
        }
        System.out.print(sb);
    }
    public static void main(String[] args) throws Exception {
        new Main().solution();
    }
}

댓글