Advertisement
stefoto

_03_BiggestThreePrimeNumbers

Sep 16th, 2014
288
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.12 KB | None | 0 0
  1. import java.util.Scanner;
  2. import java.util.TreeSet;
  3.  
  4. public class BiggestThreePrimeNumbers {
  5.  
  6.     public static void main(String[] args) {
  7.  
  8.         Scanner input = new Scanner(System.in);
  9.         String s = input.nextLine();
  10.         long sum = 0;
  11.         TreeSet<Integer> primeNumbers = new TreeSet<Integer>();
  12.         String[] splittedS = s.split("[^-0-9]+");
  13.  
  14.         for (int i = 0; i < splittedS.length; i++) {
  15.             if (splittedS[i].equals("")) {
  16.                 continue;
  17.             }
  18.             if (isPrime(Integer.parseInt(splittedS[i]))) {
  19.                 primeNumbers.add(Integer.parseInt(splittedS[i]));
  20.             }
  21.         }
  22.  
  23.         if (primeNumbers.size() < 3) {
  24.             System.out.println("No");
  25.         } else {
  26.             String primeNumString = primeNumbers.toString();
  27.             String[] splittedSum = primeNumString.split("[^-0-9]+");
  28.             for (int i = splittedSum.length - 1; i >= 0; i--) {
  29.                  if (i == splittedSum.length - 4) {
  30.                      break;
  31.                  }
  32.                  sum += Long.parseLong(splittedSum[i]);
  33.             }
  34.             System.out.println(sum);
  35.         }
  36.  
  37.     }
  38.  
  39.     private static boolean isPrime(Integer number) {
  40.         int i;
  41.         for (i = 2; i <= number / 2; i++) {
  42.             if (number % i == 0) {
  43.                 return false;
  44.             }
  45.         }
  46.         return true;
  47.     }
  48. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement