문제
어떤 수 X가 주어졌을 때, X의 모든 자리수가 역순이 된 수를 얻을 수 있다. Rev(X)를 X의 모든 자리수를 역순으로 만드는 함수라고 하자. 예를 들어, X=123일 때, Rev(X) = 321이다. 그리고, X=100일 때, Rev(X) = 1이다.
두 양의 정수 X와 Y가 주어졌을 때, Rev(Rev(X) + Rev(Y))를 구하는 프로그램을 작성하시오
입력
첫째 줄에 수 X와 Y가 주어진다. X와 Y는 1,000보다 작거나 같은 자연수이다.
출력
첫째 줄에 문제의 정답을 출력한다.
Solved.ac 레벨
브론즈 I
풀이
#include <bits/stdc++.h>
using namespace std;
int Rev(int num){
string sStr = to_string(num);
reverse(sStr.begin(), sStr.end());
return stoi(sStr);
}
int main(){
ios::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
int numX, numY;
cin >> numX >> numY;
cout << Rev(Rev(numX) + Rev(numY)) << endl;
return 0;
}
'Study (etc) > Problem Solving' 카테고리의 다른 글
[BOJ / C++] 11655번 : ROT13 (0) | 2022.04.01 |
---|---|
[BOJ / C++] 11170번 : 0의 개수 (0) | 2022.04.01 |
[BOJ / C++] 2902번 : KMP는 왜 KMP일까? (0) | 2022.04.01 |
[BOJ / C++] 10953번 : A+B-6 (0) | 2022.04.01 |
[BOJ / C++] 2744번 : 대소문자 바꾸기 (0) | 2022.04.01 |