// Author: Rodney Shaghoulian // Github: github.com/RodneyShag // HackerRank: hackerrank.com/RodneyShag import java.io.*; import java.util.*; import java.text.*; import java.math.*; import java.util.regex.*; import java.lang.reflect.*; import static java.lang.System.in; class Prime { void checkPrime(int... numbers) { for (int num : numbers) { if (isPrime(num)) { System.out.print(num + " "); } } System.out.println(); } boolean isPrime(int n) { if (n < 2) { return false; } else if (n == 2) { // account for even numbers now, so that we can do i+=2 in loop below return true; } else if (n % 2 == 0) { // account for even numbers now, so that we can do i+=2 in loop below return false; } int sqrt = (int) Math.sqrt(n); for (int i = 3; i <= sqrt; i += 2) { // skips even numbers for faster results if (n % i == 0) { return false; } } return true; } } public class Solution { public static void main(String[] args) { try { BufferedReader br = new BufferedReader(new InputStreamReader(in)); int n1 = Integer.parseInt(br.readLine()); int n2 = Integer.parseInt(br.readLine()); int n3 = Integer.parseInt(br.readLine()); int n4 = Integer.parseInt(br.readLine()); int n5 = Integer.parseInt(br.readLine()); Prime ob = new Prime(); ob.checkPrime(n1); ob.checkPrime(n1,n2); ob.checkPrime(n1,n2,n3); ob.checkPrime(n1,n2,n3,n4,n5); Method[] methods = Prime.class.getDeclaredMethods(); Set set = new HashSet<>(); boolean overload = false; for (int i = 0; i < methods.length; i++) { if (set.contains(methods[i].getName())) { overload = true; break; } set.add(methods[i].getName()); } if (overload) { throw new Exception("Overloading not allowed"); } } catch (Exception e) { System.out.println(e); } } }