WHY MY CODE is making runtime error in SPOJ question PLSSS HELPPPP!!!! | I am tried for 1 week plsss help

Revision en1, by GreedyXploit, 2020-12-01 10:20:21

QUESTION LINK

MY CODE _

#include<iostream>
#include<cmath>
#include<vector>
#include<algorithm>

using namespace std;

vector<long long> SimpleSieve( vector<long long>& primes)
{
	//vector<long long> primes;
	bool isprime[10001]; // 10^5
	for(long long  i = 0 ; i<=10000 ; i++)
		isprime[i] = true;

	for(long long i = 2 ; i*i<=10000 ; i++)
	{
		if(isprime[i])
		{
			
			for(long long j = i*i ; j<=10000 ; j+=i)
				isprime[j] = false;
		}
	}
	for(int i = 0 ; i<=10000 ; i++){
		if(i == 1 || i == 0) continue;
		if(isprime[i] )
			primes.push_back(i);
	}
	return primes;
	
}

int main()
{
	int t;
	cin>>t;
	vector<long long> primes;
	SimpleSieve(primes);
	//for(auto i : primes)
	//	cout<<i<<"\n";

	while(t--){
		long long l , r;
		cin>>l>>r;
		///long long rsqrt = sqrt(r);
	
	bool is_prime[r-l+1];
	for(long long  i =0 ; i<=r-l ; i++)
	{
		is_prime[i] = true;
	}	
		//cout<<i;
	for(long long  i = 0 ;primes[i]*(long long)primes[i]<=r ; i++)
	{
		long long currprime = primes[i];
		//cout<<currprime<<"C"<<"\n";
		long long base = (l/currprime)*(currprime);
		if(base<l)
			base = base + currprime;
		for(long long j = base ; j<=r ; j+=currprime)
		{
			is_prime[j-l] = false;
	
		}	
		if(base == currprime)
			is_prime[base - l] = true;
	}
	
	
	for(long long i = 0 ; i<=r-l; i++)
	{
		if(is_prime[i] == true)
			cout<<i+l<<"\n";
	}
	}
}

History

 
 
 
 
Revisions
 
 
  Rev. Lang. By When Δ Comment
en1 English GreedyXploit 2020-12-01 10:20:21 1586 Initial revision (published)