728x90
코드
#include <stdio.h>
int reverse(int n) { //숫자를 뒤집는 함수
int res = n / 100;
n = n % 100;
res += n / 10 * 10;
n = n % 10;
res += n * 100;
return res;
}
main() {
int a, b;
scanf("%d %d", &a, &b);
a = reverse(a);
b = reverse(b);
printf("%d", (a > b ? a : b));
}
설명
세 자리 수를 두 개를 입력 받아 reverse함수로 숫자를 뒤집고 대소를 비교하는 코드이다.
reverse 함수에서는 숫자를 100, 10으로 나눈 나머지와 몫을 활용해 숫자를 뒤집어주었다.
(이 문제에서는 세 자리 수를 다루므로 저렇게 했지만 숫자가 커지면 반복문을 통해 10^n으로 나눗셈하는 것으로 활용할 수 있을 것 같다.)
이후 main함수에서 a와 b를 각각 뒤집은 숫자로 업데이트하고, 대소 비교 후 더 큰 숫자를 출력한다.
728x90
'C & C++ > BOJ' 카테고리의 다른 글
[백준] 1834번: 나머지와 몫이 같은 수 (0) | 2021.03.04 |
---|---|
[백준] 1731번: 추론 (0) | 2021.03.03 |
[백준] 13235번: 팰린드롬 (0) | 2021.02.25 |
[백준] 1568번: 새 (0) | 2021.02.25 |
[백준] 1371번: 가장 많은 글자 (0) | 2021.02.25 |