Reverse Three Digits
Programming Basics · C++
TASK
Problem
In “Reverse Three Digits”, given the required decimal number, reverse its digits.
EXAMPLE
Example
123
321
LIMITS
Constraints
The number has exactly the number of decimal digits stated in the task and is non-negative.
LEARN
Theory for this problem
+
Repeated division by powers of 10 and `% 10` isolate decimal digits without converting the number to a string.
Connection to “Reverse Three Digits”: here, integer `/` and `%` provide the quotient and remainder, which is useful for digit extraction and cyclic arithmetic.
NEED HELP?
Hints
+
['Extract the digits first, then combine or compare them.', 'After solving “Reverse Three Digits”, verify the algorithm on your own small example and on an allowed boundary case. Print only the required result with no extra text.']
ANSWER
Solution
+
#include <iostream>
#include <algorithm>
using namespace std;
int main() {
int n;
cin >> n;
cout << (n % 10) * 100 + ((n / 10) % 10) * 10 + n / 100 << '\n';
return 0;
}