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:

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.

Auto comment: topic has been updated by aman_naughty (previous revision, new revision, compare).Do you think codeforces is your personal debugging forum?

Have you tried :

If so, there is nothing wrong with writing such blogs but otherwise imagine if everyone started writing blogs like these for every single code they are not able to debug.

PS: Your code gives 0 for [1002001 1002001] , answer is 1.

I have tried analyzing my code but after spending a fruitful amount of time I could not find a mistake in my code and still cannot, that why is it not generating all the palindromes like your test case. Thanks for the help buddy cheers.

I have tried analyzing my codeAnalysis by eyeballing? If that's the case, you'll get nowhere even if you have unlimited time.

Completely agree man

Will you help strange kids repetitively asking you to do their addition/multiplication homework? Won't it waste your time? Or you rather spend time on their h/w than achieving your own goals? See blog author previous blog entries he constantly asks such question, no one here is his personal teacher. Giving someone direct answers is not helping them in anyway.

chup

I am not asking for the complete solution or approach for the problem, I have thought of a logic and it seems correct but being a green guy I don't think I am that good at the implementation of that logic. Now that I am stuck I was wondering someone could help me in my logic of generating palindromes. Thanks mate.

See if I underatand your algo correctly — For l = 3 you are generating palindromes by appending digits 1-9 to palindromes of l=1 but in this way you will never get palindrome like 080.. For l=4 you can never get palindrome like 10801, hence your logic is incorrect.

Oh thanks, man love u 3000