728x90
반응형

상수 다국어

문제

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

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

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

입력

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

출력

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <stdio.h>
#include <string.h>
 
int main()
{
    char num1[4], num2[4];
    scanf("%s %s",num1,num2);
    char temp;
    
    temp = num1[2];
    num1[2= num1[0];
    num1[0= temp;
    
    temp = num2[2];
    num2[2= num2[0];
    num2[0= temp;
    
    if(strcmp(num1,num2)>0){
        printf("%s",num1);
    }else{
        printf("%s",num2);
    }
    return 0;
}
 
cs

 

int 형으로 입력받아서 백의자리, 십의 자리, 일의 자리로 구분해서 풀었으면 더 쉬웠을 듯

하지만 카테고리가 문자열이라서 문자열로 입력받는 걸로

 

strcmp를 이용하면 매개변수로 입력한 두개의 문자열을 비교하여 

완전히 같다면 0, < 이면 음수를, >이면 양수를 반환한다.

num1 이 클 경우 0보다 크기 때문에 

조건문을 통해 변형된 num1을 출력하면 된다.

반응형

'백준 단계별로 풀어보기 > 문자열' 카테고리의 다른 글

백준 10809 알파벳 찾기  (0) 2022.10.03
백준 5622 다이얼  (1) 2022.10.03
백준 1152 단어의 개수  (0) 2022.10.03
백준 1157 단어 공부  (0) 2022.10.02
백준 2675 문자열 반복  (0) 2022.10.02

+ Recent posts