Hi,
I'm trying to solve PRIME1 problem and getting a Wrong Answer when I submit.
Unfortunately the system doesn't tell me which case it fails.
Below is my code.
Can somebody tell me whats wrong with it ?
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Main {
public boolean isPrime(int iNum) {
if (iNum == 1)
return false;
for (int i = 2; i < (iNum / 2 + 1); i++) {
if (iNum % i == 0) {
return false;
}
}
return true;
}
public void printPrimes(int iStartNum, int iEndNum) {
int i = iStartNum;
while (i <= iEndNum) {
if (isPrime(i)) {
System.out.println(i);
}
i++;
}
}
public static void main(String[] args) {
Main pg = new Main();
int val = 0;
try {
val = Integer.parseInt(new BufferedReader(new InputStreamReader(
System.in)).readLine());
int[][] arrInput = new int[val][2];
BufferedReader in = new BufferedReader(new InputStreamReader(
System.in));
String range = "";
for (int i = 0; i < val; i++) {
range = in.readLine();
StringTokenizer st = new StringTokenizer(range);
arrInput[i][0] = Integer.parseInt(st.nextToken());
arrInput[i][1] = Integer.parseInt(st.nextToken());
}
for (int i = 0; i < val; i++) {
if ((arrInput[i][0] >= 1) && (arrInput[i][1] <= 1000000000)
&& (arrInput[i][1] - arrInput[i][0] <= 100000))
pg.printPrimes(arrInput[i][0], arrInput[i][1]);
System.out.println();
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
created
last reply
- 3
replies
- 359
views
- 2
users