NZEC Prime号码生成SPOJ- http://www.spoj.com/problems/PRIME1/

时间:2015-09-05 19:17:27

标签: java

我是编码初学者。我在提交我的代码时遇到NZEC错误。但是代码在我的桌面上运行得非常好。请帮助我。这就是我编码的内容。

import java.util.*;
import java.lang.*;
import java.io.*;
import static java.lang.Math.*;

/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
    public static void main (String[] args) throws java.lang.Exception
    {
        // your code goes here
        int testcase;
        int lower_limit,upper_limit;
        int i,j,k;
        boolean[] a= new boolean[100001];
        Arrays.fill(a, Boolean.TRUE);
        Scanner sc1 = new Scanner(System.in);
        testcase= sc1.nextInt();
        for(;testcase>0;testcase--)
        {
            lower_limit= sc1.nextInt();
            upper_limit= sc1.nextInt();
            for(i = 2;i<sqrt(upper_limit);i++)
            {
                if(a[i]=true)
                {
                    for(j=i;j<=upper_limit;j=j+i)
                    {
                    a[j]=false;
                    }
                }
            }
                for(i=lower_limit;i<upper_limit;i++)
                {
                    if(a[i]==true)
                    {
                        System.out.println(i);
                    }
                }
        }
    }
}

1 个答案:

答案 0 :(得分:0)

你的数组超出了m和n的大值的索引。在您的系统上尝试此示例测试用例,其中m = 999900000且n = 1000000000。您不能将这些大值存储为数组的索引。即使m或n = 10 ^ 8也会超出数组的绑定索引。