For this Question: Given an even number (greater than 2), return two prime numbers whose sum will be equal to the given number. If there are several combinations possible, an outcome is the one in which the minimum number is minimized.

NOTE: A solution will always exist, read Goldbach’s conjecture. Also, solve the problem in linear time complexity, i.e., O(n).

The problem was asked in Yahoo.The first line contains T, the number of test cases. The following T lines consist of a number each, for which we'll find two prime numbers.

Constraints:
1 ≤ T ≤ 70
1 ≤ N ≤ 100000For every test case print, two prime numbers space-separated, such that the smaller number appears first. Answer for each test case must be in a new line.Input:
5
74
1024
66 
8
9990

Output:
3 71
3 1021
5 61
3 5
17 9973, I have written this Solution Code: import java.io.*;
import java.util.*;
class Main {
    public static boolean isPrime(int n)
    {
        int divisors=0;
        for(int i=1;i<=n;i++)
        {
            if(n%i==0)
            {
                divisors=divisors+1;
            }
        }
        if(divisors==2)
            return true;
        else
            return false;
    }
    public static void main (String[] args) {

        Scanner sc = new Scanner(System.in);
        int t=sc.nextInt();
        while(t>0)
      {  int n = sc.nextInt();
        for(int i=1;i<=n;i++)
        {
            int first=i;
            int second=n-i;
            if(isPrime(first)==true && isPrime(second)==true)
            {
                System.out.println(first+" "+second);
                break ;
            }
        }
          t--;
    }

    }
}, In this Programming Language: Java, Now tell me if this Code is compilable or not?