[백준] 2908

당당·2023년 4월 21일
0

백준

목록 보기
29/179

https://www.acmicpc.net/problem/2908

📔문제

상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두 개를 칠판에 써주었다. 그 다음에 크기가 큰 수를 말해보라고 했다.

상수는 수를 다른 사람과 다르게 거꾸로 읽는다. 예를 들어, 734와 893을 칠판에 적었다면, 상수는 이 수를 437과 398로 읽는다. 따라서, 상수는 두 수중 큰 수인 437을 큰 수라고 말할 것이다.

두 수가 주어졌을 때, 상수의 대답을 출력하는 프로그램을 작성하시오.


📝입력

첫째 줄에 상근이가 칠판에 적은 두 수 AB가 주어진다. 두 수는 같지 않은 세 자리 수이며, 0이 포함되어 있지 않다.


📺출력

첫째 줄에 상수의 대답을 출력한다.


📝예제 입력 1

734 893

📺예제 출력 1

437

📝예제 입력 2

221 231

📺예제 출력 2

132

📝예제 입력 3

839 237

📺예제 출력 3

938

🔍출처

Contest > Croatian Open Competition in Informatics > COCI 2009/2010 > Contest #3 1번
-문제를 번역한 사람: baekjoon
-문제의 오타를 찾은 사람: eric00513, identity1978, jongfighter, pkcchoi3
-데이터를 추가한 사람: ssuu0216


🧮알고리즘 분류

  • 수학
  • 구현

📃소스 코드

import java.util.Scanner;

public class Code2908 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner scanner=new Scanner(System.in);
		
		char[] num1;
		char[] num2;
		num1=scanner.next().toCharArray();
		num2=scanner.next().toCharArray();
		
		String a,b;
		
		a=String.valueOf(reverse(num1));
		b=String.valueOf(reverse(num2));
		
		
		if(Integer.valueOf(a)<Integer.valueOf(b)){
			System.out.println(b);
		}
		else {
			System.out.println(a);
		}
		
	}

	public static char[] reverse(char[] c) {
		char[] reverse=new char[c.length];
		for(int i=0;i<c.length;i++) {
			for(int j=c.length-i;j>0;j--) {
				reverse[j-1]=c[i];
			}
			
		}
		return reverse;
	}

}

📰출력 결과


📂고찰

다음부턴 문자열 뒤집는 메소드를 사용해보도록 하자..

그리고 String.valueOf를 꼭 기억하자!
코딩테스트때는 이클립스처럼 도와주지않는다..

profile
MySQL DBA 신입 지원

0개의 댓글