fork download
  1. /* package whatever; // don't place package name! */
  2.  
  3. import java.util.*;
  4. import java.lang.*;
  5. import java.io.*;
  6.  
  7. /* Name of the class has to be "Main" only if the class is public. */
  8. class Ideone
  9. {
  10. public static void main (String[] args) throws java.lang.Exception
  11. {
  12. // your code goes here
  13. int N = 5_000_000;
  14. List<Integer> twins = twinPrimes(N);
  15. boolean[] flag = new boolean[N+1];
  16. for (int i = 0; i < twins.size(); i++) {
  17. int a = twins.get(i);
  18. for (int j = i; j < twins.size(); j++) {
  19. int b = twins.get(j);
  20. int s = a + b;
  21. if (s < flag.length) flag[s] = true;
  22. }
  23. }
  24. for (int i = 6; i < flag.length; i += 2) {
  25. if (!flag[i]) System.out.print(", " + i);
  26. }
  27. }
  28.  
  29. static List<Integer> twinPrimes(int N) {
  30. boolean[] flag = new boolean[N+1];
  31. for (int i = 3; i < flag.length; i += 2) {
  32. if (flag[i]) continue;
  33. for (int j = i+i+i; j < flag.length; j += i+i) {
  34. flag[j] = true;
  35. }
  36. }
  37. List<Integer> ret = new ArrayList<>();
  38. for (int i = 3; i < flag.length; i += 2) {
  39. if (flag[i]) continue;
  40. if (i>3&&!flag[i-2]) ret.add(i);
  41. else if (i+2<flag.length&&!flag[i+2]) ret.add(i);
  42. }
  43. return ret;
  44. }
  45. }
Success #stdin #stdout 3.23s 2184192KB
stdin
Standard input is empty
stdout
, 94, 96, 98, 400, 402, 404, 514, 516, 518, 784, 786, 788, 904, 906, 908, 1114, 1116, 1118, 1144, 1146, 1148, 1264, 1266, 1268, 1354, 1356, 1358, 3244, 3246, 3248, 4204, 4206, 4208