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
2017-06-01 09:27:57
i'm using c++ and took my variable as int my program passes all the test cases but still it says wrong answer.
2017-05-31 18:07:00
Note for golang: This will cause bufio.Scanner crash with "buffer too long".
2017-05-30 09:03:37
My code is running perfect in codeBlocks and on codeChef compiler but spoj compiler is giving me "runtime error (SIGSEGV)" error.
I am using C++
Can someone please help.

Last edit: 2017-05-31 10:21:45
2017-05-19 22:57:25
Really Nice problem.Initially I didnt see the limits so I got a WA then got ac :D....These problems does increase your knowledge..All those applying Brute Force..Don't
2017-05-19 16:56:37
using \b in case of 99 or similar type...After removing this VOILA...Cheers.....
2017-05-18 20:47:21
My solution is running fine when executed in ideone.com but here it is throwing time limit exceed error!!
any advice?
2017-05-16 01:08:22

I'm using Java, and even my program passing on several tests already done by me, and even using the examples of the comments found here, he from NZEC, does anyone help?
2017-05-13 16:35:16
my code is passing all the test cases on ideone ; still getting wrong answer here
2017-05-09 18:27:40
For guys who are solving the question in python don't try to convert the integer to string, as in python it is very costly operation. Try to solve the problem by keeping the number in string and you should be good to go.

for people struggling with wrong answer -
try these test cases -
0
9
99
999
9999
101
11
100000

answer should be
1
11
101
1001
10001
111
22
100001
2017-05-08 15:49:37 Kaushik Mitra
This problem is awesome!! 5 hours straight into it and then the GREEN light. Loved the problem.
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.