PRIME1 - Prime Generator


Peter wants to generate some prime numbers for his cryptosystem. Help him! Your task is to generate all prime numbers between two given numbers!

Input

The input begins with the number t of test cases in a single line (t<=10). In each of the next t lines there are two numbers m and n (1 <= m <= n <= 1000000000, n-m<=100000) separated by a space.

Output

For every test case print all prime numbers p such that m <= p <= n, one number per line, test cases separated by an empty line.

Example

Input:
2
1 10
3 5

Output:
2
3
5
7

3
5
Warning: large Input/Output data, be careful with certain languages (though most should be OK if the algorithm is well designed)

Information

After cluster change, please consider PRINT as a more challenging problem.

hide comments
wh4t_n3xt: 2017-05-26 09:01:44

Clue: You can solve it without a seive :)

Last edit: 2017-05-26 09:02:08
steevie189: 2017-05-23 02:44:21

Then why it say Time running Error for 0.01s, I am Writing in C#.

abhishek4996: 2017-05-21 18:46:10

AC in one go but took 3.64s in Java :(

samuelcarinhas: 2017-05-16 22:38:23

Its possible with java? Always say time limit exceed

prasadkirpekar: 2017-05-15 06:52:31

C++
1.71 seconds

narutoumania: 2017-05-11 11:04:58

clue: NO SEIVE ,NO SEGMENTED SEIVE,JUST SOME OPTIMISATION IN NORMAL WAY

gauge2727: 2017-05-07 22:58:08

My Python 3.x solution runs perfectly fine (and relatively quickly) ideone and on my local system, given the sample inputs provided in the description and on test cases of primes up to at least 2 million, but times out on submission for the problem.

elegantalgo: 2017-04-28 16:51:35

At first I thought that it is impossible to solve this problem in Python because it takes more than 30 seconds to generate 1 billion primes with the most efficient prime sieve (+ memory inefficient code), but then I thought about (n-m <= 100000) constraint. It took me lot of time to write a bug free segmented prime sieve (sieve which generates primes only between [m, n]). I solved this problem within 0.12 seconds and I am sure that my code can be made twice as efficient as it currently is :D

=(Francky)=> 0.03s is to be challenged using Python3...

Last edit: 2017-04-28 18:27:05
rohit9934: 2017-04-23 10:40:11

Same Solution without Sieve or Segmented Sieve(Time Limit 3 sec :p)
C : 1.66 sec
C++ : 0.7 seconds.

shahroz14: 2017-04-19 11:38:50

All natural numbers are either a prime or a multiple of a prime except 1.

Last edit: 2017-04-19 11:39:42

Added by:Adam Dzedzej
Date:2004-05-01
Time limit:6s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All except: NODEJS PERL6