https://www.acmicpc.net/problem/2908
2908번: 상수
상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두
www.acmicpc.net
문제
상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두 개를 칠판에 써주었다. 그 다음에 크기가 큰 수를 말해보라고 했다.
상수는 수를 다른 사람과 다르게 거꾸로 읽는다. 예를 들어, 734와 893을 칠판에 적었다면, 상수는 이 수를 437과 398로 읽는다. 따라서, 상수는 두 수중 큰 수인 437을 큰 수라고 말할 것이다.
두 수가 주어졌을 때, 상수의 대답을 출력하는 프로그램을 작성하시오.
입력
첫째 줄에 상근이가 칠판에 적은 두 수 A와 B가 주어진다. 두 수는 같지 않은 세 자리 수이며, 0이 포함되어 있지 않다.
출력
첫째 줄에 상수의 대답을 출력한다.
import java.util.*;
public class Main{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int A = sc.nextInt();
int B = sc.nextInt();
int[] a = new int[3];
int[] b = new int[3];
int c = 0;
int d = 0;
a[0] = A/100;
a[1] = (A%100)/10;
a[2] = A%10;
b[0] = B/100;
b[1] = (B%100)/10;
b[2] = B%10;
c = a[0] + (a[1] * 10) + (a[2] * 100);
d = b[0] + (b[1] * 10) + (b[2] * 100);
if(c > d){
System.out.println(c);
}
else{
System.out.println(d);
}
}
}
푸는 방법이 많아 보이는 문제지만.. 생각나는 방법은 3자리 수 2개를 입력받은 뒤 배열 하나에 자릿수 하나씩 넣고 이후 다른 변수에 뒤집어서 넣는 방법을 택했다. 위는 매우 원시적인 방법을 사용한 것 같고.. 검색해보니 문자열로 반환시킨 뒤 reverse() 메소드를 사용하는 방법이 있었다.. 물론 처음 보는 내용이라 '아 이걸 쓸걸 그랬네'와 같은 생각은 일절 들지도 않았던 건 안비밀.
다른 방법들:
[백준] 2908번 : 상수 - JAVA [자바]
https://www.acmicpc.net/problem/2908 2908번: 상수 문제 상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하
st-lab.tistory.com
'Java' 카테고리의 다른 글
[프로그래머스] 코딩테스트 Lv.1 - 문자열 내 p와 y의 개수 (0) | 2024.01.30 |
---|---|
[백준] 코딩테스트 문제 5622 : 다이얼 (0) | 2023.07.20 |
[백준] 코딩테스트 문제 1152 : 단어의 개수 (0) | 2023.07.20 |
[백준] 코딩테스트 문제 11654번 : 아스키 코드 (0) | 2023.07.20 |
[백준] 코딩테스트 문제 9086 : 문자열 (0) | 2023.07.11 |