Mobile coding works. A laptop is faster for long sessions.

Problem

Read a natural number n and print its mirror (the number obtained by reading its digits from right to left). The computation must be done using a recursive function.

Define a recursive function mirror(n, acc) that takes the remaining number to process and an accumulator for the result built so far. At each call, the last digit of n is appended to acc:

mirror(0, acc) = acc
mirror(n, acc) = mirror(n / 10, acc * 10 + n % 10), for n > 0

For n == 0 the program prints 0.

Input format

Input input.txt

The program reads from standard input a single natural number `n`. - `0 <= n <= 1.000.000.000` - The solution must use recursion.

Output format

Output output.txt

The program prints the mirror of `n`, followed by a newline. Trailing zeros in `n` become leading zeros in the mirror and are not printed (for example, the mirror of `1000` is `1`).

Example

input
12345
output
54321

Ready to solve this challenge?

Create a free account to write code, submit solutions, and track your progress.

⌨️ Keyboard Shortcuts

Code Editor
Run Code
Ctrl Enter
Submit Code
Ctrl Shift Enter
Format Code
Shift Alt F
Toggle Comment
Ctrl /
Undo
Ctrl Z
Redo
Ctrl Y
Navigation
Global Search
/
Show Shortcuts
?
Close Modal
Esc

🔍 Interactive Debugger

0 / 0

Analyzing your code...

📦 Variables

No variables yet

📚 Call Stack
main() line 1
📤 Output