LUCIFER - LUCIFER Number


Lucifer is the only human who has defeated RA-ONE in a computer game ...

RA-One is after lucifer for revenge and G-One is there to protect him ...

All thi G-One and Ra-one Nonsense has disturbed Lucifer's life ...

He wants to get Rid of Ra-One and kill him . He found that Ra-One can be killed only by throwing Lucifer number of weapons at him.

Lucifer number shares the some properties of Ra-One Numbers numbers and G-One Numbers

Any number is LUCIFER NUMBER if the difference between sum of digits at even location and sum of digits at odd location is prime number. For example, 20314210 is a Lucifer number:

digits at odd location 0, 2, 1, 0.

digits at even location 1, 4, 3, 2.

difference = (1+4+3+2)-(0+2+1+0) = 10-3 = 7 ... a prime number.

Lucifer has access to a Warehouse which has lots of weapons. He wants to know in how many ways can he kill him.

Can you help him?

Input

First line will have a number 't' denoting the number of test cases.

each of the following t lines will have 2 numbers 'a', 'b'

Output

Print single number per test case, depicting the count of Lucifer numbers in the range a, b inclusive.

Example

Input:
5
200 250
150 200
100 150
50 100
0 50
Output: 2
16
3
18
6

NOTE: t will be less than 100. 'a' and 'b' will be between 0 and 10^9 inclusive.


hide comments
iceelement: 2019-01-25 03:56:21

I think this question requires further clarifications. Difference here means the signed difference between even and odd positions. The positioning is considered from right to left with 1 based indexing. Negative numbers are not considered prime, even if their absolute value is prime.

puddin: 2018-07-05 01:01:38

Can someone pls explain how the ans for test case-- 0 50 is 6 as I am getting 14 for it.

aman_sachin200: 2018-06-06 01:04:23

This felt so good!!AC in 1 go!!My first digit dp :)

sdssudhu: 2018-01-24 17:52:29

AC in one GO;)

sfialok98: 2017-06-28 10:25:08

Learnt so much..

Nafis Islam: 2017-06-20 14:38:04

my first digit dp :D

wh1t3_r0s3: 2017-04-27 19:19:41

recursion without memoization is getting accepted too

sieunhanbom04: 2017-03-20 16:58:19

:'( ACed. So good

Liquid_Science: 2016-02-01 15:36:29

fastest in JAVA :P

ihak: 2015-07-25 14:34:58

Easy . Just Change the terminating condition in My Function and All the three problems are Done!
Well good setting anyways. I didnt see a lot of problems on spoj on Digit Dynamic Programming :)


Added by:Devil D
Date:2012-03-09
Time limit:0.100s-0.5s
Source limit:10000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All except: ASM64
Resource:Own