[DHBB25 - DX01 - 11] Bài 1: Số đảo ngược

Xem dạng PDF

Gửi bài giải

Điểm: 23,00 (OI)
Giới hạn thời gian: 2.0s
Giới hạn bộ nhớ: 1G
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Output Only, Pascal, PyPy, Python, Scratch, TEXT

Trong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài

Cho một số tự nhiên ~n~, hãy tìm số tự nhiên nhỏ nhất ~x~ sao cho số đảo ngược của ~x~ lớn hơn ~n~.

Số đảo ngược của một số tự nhiên được tạo ra bằng cách đọc số đó từ phải sang trái rồi bỏ đi các chữ số ~0~ vô nghĩa ở đầu nếu có. Ví dụ:

  • Số đảo ngược của ~0~ là ~0~.
  • Số đảo ngược của ~1234~ là ~4321~.
  • Số đảo ngược của ~8430982~ là ~2890348~.
  • Số đảo ngược của ~1200~ là ~0021 (= 21)~.

Input

  • Một dòng duy nhất chứa số nguyên ~n~ (~1 \le n \le 10^{18}~).

Output

  • Một số nguyên duy nhất — số tự nhiên nhỏ nhất ~x~ sao cho số đảo ngược của ~x~ lớn hơn ~n~.

Sample Input

9

Sample Output

11

Giải thích ví dụ

  • Với ~n = 9~: Số đảo ngược của ~11~ là ~11 > 9~.
  • Với ~n = 800~: Số đảo ngược của ~108~ là ~801 > 800~.
  • Với ~n = 97~: Số đảo ngược của ~89~ là ~98 > 97~.

Subtasks

Subtask Ràng buộc bổ sung Điểm
1 ~n \le 10~ 10
2 ~n~ là lũy thừa của ~10~ 10
3 ~n \le 10^6~ 30
4 ~n \le 10^9~ 20
5 Không có ràng buộc bổ sung 30

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.