我目前正在尝试从 sphere 在线法官(http://www.spoj.pl/problems/PRIME1/)解决 Prime Generator 问题。
核心问题已经解决了,我面临的问题是在读取输入时,前两行读得很好,读到第三行我必须按回车,这个小东西让我超时解决方案的评估。我想知道是否有某种方式,因此它可以读取整个输入,而无需我按 Enter。
这是输入和输出
输入:
2
1 10
3 5
输出:
2
3
5
7
3
5
这是我的代码
class Solucion_Prime_Generator {
public static void main(String[] args) throws NumberFormatException,
IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
int t = Integer.parseInt(reader.readLine());
for(int i=0;i<t;i++)
{
String numbers = reader.readLine();
System.out.println(numbers);
String[] numberArray = numbers.split(" ");
for (int j = Integer.parseInt(numberArray[0]); j <= Integer.parseInt(numberArray[1]); j++)
{
if(isPrime(j)){
System.out.println(j);
}
}
System.out.println(" ");
}
}
public static boolean isPrime(int n)
{
if( n==1)
{
System.out.println();
return false;
}
if(n==2)
{
return true;
}
if(n%2==0){
return false;
}
for (int i = 3; i*i <= n; i+=2)
{
if(n%i==0)
{
return false;
}
}
return true;
}
}