Generating Palindrome
Difference between en1 and en2, changed 318 character(s)
I have a problem: Given two numbers in l and r where l<=r and can be as large as **1e18**, I want to count the number of palindrome numbers in the range l to r such that they are a square of some palindrome number. ↵

For example, I have L=4 and R=1000↵

ans = 4 , numbers are 4, 9, 121, 464.↵

My code:↵

[code](http://codepad.org/fbk3TGxx)↵

I am getting the wrong answer on this test case ↵

L=92904622↵
R=232747148↵

My answer is 3 but the correct answer is 6.↵

My approach is to generate all palindromes of length at most 10 and then check if their square is also a palindrome.↵

I am generating palindromes as follows, ↵

For length 1 I have 10 palindromes from 0 to 9 and for length 2 I have 9 palindromes of the form {11, 22,.., 99}.↵

Now for forming **l** length palindrome I simply append digits 1 to 9 at the beginning and the end to each of the generated palindromes of length **l-2**↵

Can someone point out what am I doing wrong??↵

Any help is appreciated.↵

History

 
 
 
 
Revisions
 
 
  Rev. Lang. By When Δ Comment
en2 English aman_naughty 2019-09-11 19:32:53 318
en1 English aman_naughty 2019-09-11 18:37:35 691 Initial revision (published)