PALIN - The Next Palindrome

A positive integer is called a palindrome if its representation in the decimal system is the same when read from left to right and from right to left. For a given positive integer K of not more than 1000000 digits, write the value of the smallest palindrome larger than K to output. Numbers are always displayed without leading zeros.

Input

The first line contains integer t, the number of test cases. Integers K are given in the next t lines.

Output

For each K, output the smallest palindrome larger than K.

Example

Input:
2
808
2133

Output:
818
2222

Warning: large Input/Output data, be careful with certain languages


Added by:adrian
Date:2004-05-01
Time limit:2s-9s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All except: NODEJS PERL6

hide comments
2018-03-30 18:04:55
TLE on using boost library of C++ why??
2018-03-27 13:32:57
@Piotrek Nicowski Thanks :D
2018-03-23 20:39:46 Piotrek Nicowski
@prabhakar2050 - For each K, output the smallest palindrome *** LARGER THAN *** K.

2018-03-17 20:26:29
isnt 808 a palindrome? In the test case, it isnt. but on the net it clearly mentions its a palindrome. What should i do?
2018-03-13 05:43:21
m new on spoj..can anyone tell me ..how I can check that on which test case my code is not accepted
2018-03-08 12:55:47
Attention should be given that there could 1000000 digits in a number.
2018-03-04 14:19:15
I write this program with c++ and I get abort error because I use stoull can someone tell me how to fix it?
2018-03-04 03:33:33
Can we use arrays?
2018-02-28 20:06:24
Can someone tell me that what would be output if input > 1000000 .
2018-02-28 08:08:04
Same problem here..I get the correct answer on my code, still I get the wrong answer here, If only we could see what test case the code failed at, it would be great.
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.