이것저것
C언어 백준 2908 - 상수 본문
https://www.acmicpc.net/problem/2908
2908번: 상수
상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두
www.acmicpc.net
[문제]
상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두 개를 칠판에 써주었다. 그 다음에 크기가 큰 수를 말해보라고 했다. 상수는 수를 다른 사람과 다르게 거꾸로 읽는다. 예를 들어, 734와 893을 칠판에 적었다면, 상수는 이 수를 437과 398로 읽는다. 따라서, 상수는 두 수중 큰 수인 437을 큰 수라고 말할 것이다. 두 수가 주어졌을 때, 상수의 대답을 출력하는 프로그램을 작성하시오.
[입력]
첫째 줄에 상근이가 칠판에 적은 두 수 A와 B가 주어진다. 두 수는 같지 않은 세 자리 수이며, 0이 포함되어 있지 않다.
[출력] 셋째 줄에 상수의 대답을 출력한다.
[예제 입력] 734 893
[예제 출력] 437
#include <stdio.h>
int math_answer(int* a, int* b);
int main(void) {
int num1, num2;
scanf_s("%d %d", &num1, &num2);
math_answer(&num1, &num2);
if (num1 > num2)
printf("%d", num1);
else
printf("%d", num2);
return 0;
}
int math_answer(int* a, int* b) {
int opp1 = 0, opp2 = 0;
int i, j = 1, divide = 100;
for (i = 0; i < 3; i++) {
opp1 += (*a / divide) * j;
opp2 += (*b / divide) * j;
*a %= divide;
*b %= divide;
divide /= 10;
j *= 10;
}
*a = opp1;
*b = opp2;
}
'Language > C언어' 카테고리의 다른 글
C언어 포인터 & 배열 (0) | 2020.11.21 |
---|---|
C언어 포인터 사용해 swap (0) | 2020.11.21 |
C언어 백준 4673 - 셀프 넘버 (0) | 2020.11.20 |
C언어 백준 1065 - 한수 (0) | 2020.11.20 |
C언어 백준 1120 변형 (0) | 2020.11.20 |