Yash Mittal and his Girlfriend

5

1 votes
Medium
Problem

If you study at NSIT then its quite rare for competitive programmers to not hear about Yash Mittal.He is indeed an incredible coder (Beleive me he really is :p). After a while he got bored and now he wants a girlfriend. But of course since he is an extremely good coder, he want his girlfriend also to be atleast a pretty decent coder.For that he is interviewing several girls .The first round of the recruitment procedure will be a coding task. The task is as follows:- Given an array A consisting of N integers and Q queries (Yash Mittal likes queries) where each query is of the form L R .The answer to each query is the number of unique prime numbers inside the array from L to R where L and R are the indexes of the array. Can you solve this task?

Input First line consists of two integers N and Q denoting the number of integers in the array and the number of queries respectively.

The second line consists of N space separated integers denoting the array elements of the array A.

Next Q lines consists of two space separated integers L R denoting the query as described above.

Output

For each query output a single integer denoting the answer as described above.

Constraints

1<=N<=100000

1<=Q<=100000

1<=A[i]<=100000

1<=L<=R<=N

Subtask 1 (10 points): 1<=N,Q<=20

Subtask 2 (20 points ): 1<= N<=1000, 1<=Q<=10000

Subtask 3 (70 points ) : 1<=N,Q<=100000

Time Limit: 1
Memory Limit: 256
Source Limit:
Explanation

For array range 1 to 3 , prime numbers are 2 and 3. So ans is 2. For array range 1 to 8 , prime numbers are 2, 3 and 5. So ans is 3. For array range 2 to 8 , prime numbers are 2, 3 and 5. So ans is 3. For array range 3 to 3 , there is no prime number. So ans is 0.

Editor Image

?