반응형
2908번: 상수
상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두
www.acmicpc.net
문제 : 두 수가 주어졌을 때, 상수의 대답을 출력하는 프로그램을 작성하시오.
상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자릿수 두 개를 칠판에 써주었다. 그다음에 크기가 큰 수를 말해보라고 했다.
상수는 수를 다른 사람과 다르게 거꾸로 읽는다. 예를 들어, 734와 893을 칠판에 적었다면, 상수는 이 수를 437과 398로 읽는다. 따라서, 상수는 두 수중 큰 수인 437을 큰 수라고 말할 것이다.
입력 : 첫째 줄에 상근이가 칠판에 적은 두 수 A와 B가 주어진다.
두 수는 같지 않은 세 자리 수이며, 0이 포함되어 있지 않다.
출력 : 첫째 줄에 상수의 대답을 출력한다.
#include<iostream>
#include<string>
using namespace std;
int main()
{
string arr;
getline(cin, arr);
char Temp;
Temp = arr[2];
arr[2] = arr[0];
arr[0] = Temp;
Temp = arr[6];
arr[6] = arr[4];
arr[4] = Temp;
int A = 100 * (arr[0] - 48) + 10 * (arr[1] - 48) + (arr[2] - 48);
int B = 100 * (arr[4] - 48) + 10 * (arr[5] - 48) + (arr[6] - 48);
if (A > B)
cout << A;
else
cout << B;
return 0;
}
중요 포인트
- 입력받은 두 수의 앞과 끝자리의 바꾸기에 의한 새로운 수 비교 알고리즘 필요
해설
처음에 문자열을 받는 함수를 이용하여 수를 받았다. ( scanf를 이용하여 2개의 수를 받아도 무방하다 )
그 후 입력받은 수의 자리를 임의로 바꾸는 코드를 구성하여 성공하게 하였다.
반응형
'프로그래밍 ( Programming ) > 백준 알고리즘 (BaekJoon Algorithm)' 카테고리의 다른 글
1057번 - 토너먼트 (0) | 2023.03.01 |
---|---|
5622번 - 다이얼 ( 백준 알고리즘/C++ ) (0) | 2020.12.19 |
1152번 - 단어의 개수 ( 백준 알고리즘/C++ ) (0) | 2020.12.15 |
1157번 - 단어 공부 ( 백준 알고리즘/C++ ) (2) | 2020.12.14 |
2675번 - 문자열 반복 ( 백준 알고리즘/C++ ) (0) | 2020.12.12 |
댓글