본문 바로가기
알고리즘 풀이

[백준]1330번: 두 수 비교하기 - java 풀이

by 코디드 2023. 3. 25.

 

정말 간단한 if 문 풀이다

 

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

public class Main {
	public static void main(String[] args) throws IOException{
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		StringTokenizer st = new StringTokenizer(br.readLine(), " ");
		
		int A = Integer.parseInt(st.nextToken());
		int B = Integer.parseInt(st.nextToken());
		
		String res = "";
		if(A>B) {
			res=">";
		}else if(A<B) {
			res="<";
		}else {
			res="==";
		}
		
		System.out.println(res);
	}
}

 

 

이렇게 풀면 되는데

if 문의 경우 삼항연산자를 이용하면 조건문의 길이를 획기적으로 줄일 수 있다.

 

변수 = (조건문) ? (true일 때 연산) : (false일 때 연산) ;

 

 

 

이 문제의 경우 else if 문까지 나오므로 삼항연산자를 중첩해서 써주면 된다.

 

 

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

public class Main {
	public static void main(String[] args) throws IOException{
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		StringTokenizer st = new StringTokenizer(br.readLine(), " ");
		
		int A = Integer.parseInt(st.nextToken());
		int B = Integer.parseInt(st.nextToken());
		
		
		String res = A>B ? ">" : (A<B ? "<" : "==");
		
		System.out.println(res);
	}
}

 

성능에는 차이가 없고 가독성을 위해 쓰는데

복잡한 조건문의 경우 삼항연산자보다는 평소에 쓰던 조건문을 써주는게 좋다.