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
hide comments
Irving AJ Rivas:
2014-01-15 15:17:31
Adhityaa: there are faster solutions. Yours works, but is pretty slow. Keep working on it. Last edit: 2011-10-27 15:26:15 |
|
Sotirios Nikoloutsopoulos:
2014-01-15 15:17:31
I got AC on this problem , even if my code failed at some test cases at even numbers ( now my code is corrected :) ).
|
|
hendrik:
2014-01-15 15:17:31
@manish: Write a brute force function and calc all results from 0..10000 or so. Then compare that against your algo you need for that task. I got AC at the first shot with that approach. |
|
genesect:
2014-01-15 15:17:31
@Hadyan: status codes explained here: http://www.spoj.pl/forum/viewtopic.php?f=6&t=55
|
|
Ricky Suryadharma:
2014-01-15 15:17:31
Not wondering again... :D
|
|
Ricky Suryadharma:
2014-01-15 15:17:31
@hadi:
|
|
An Yujie:
2014-01-15 15:17:31
Coders, attention. SIGSEGV means your array is not big enough. I got SIGSEGV by x[100000], but when I changed it to x[1000000], I got AC. It means that the biggest number may have 1000000 digits... Last edit: 2010-07-02 13:12:06 |
|
Jargon:
2014-01-15 15:17:31
It's up to 1 million digits -- try reading the comments below yours to see if the question has been answered before.
|
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 |