Added 27 solutions
This commit is contained in:
@@ -0,0 +1,73 @@
|
||||
// Author: Rodney Shaghoulian
|
||||
// Github: github.com/rshaghoulian
|
||||
// HackerRank: hackerrank.com/rshaghoulian
|
||||
|
||||
import java.io.*;
|
||||
import java.util.*;
|
||||
interface PerformOperation {
|
||||
boolean check(int a);
|
||||
}
|
||||
class MyMath {
|
||||
public static boolean checker(PerformOperation p, int num) {
|
||||
return p.check(num);
|
||||
}
|
||||
|
||||
public static PerformOperation is_odd() {
|
||||
return n -> (n & 1) == 1;
|
||||
}
|
||||
|
||||
public static PerformOperation is_prime() {
|
||||
// O(n^(1/2)) runtime
|
||||
return n -> {
|
||||
if (n < 2) {
|
||||
return false;
|
||||
}
|
||||
int sqrt = (int) Math.sqrt(n);
|
||||
for (int i = 2; i <= sqrt; i++) {
|
||||
if (n % i == 0) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
};
|
||||
}
|
||||
|
||||
public static PerformOperation is_palindrome() {
|
||||
return n -> {
|
||||
String original = Integer.toString(n);
|
||||
String reversed = new StringBuilder(Integer.toString(n)).reverse().toString();
|
||||
return original.equals(reversed);
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
public class Solution {
|
||||
public static void main(String[] args) throws IOException {
|
||||
MyMath ob = new MyMath();
|
||||
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
|
||||
int T = Integer.parseInt(br.readLine());
|
||||
PerformOperation op;
|
||||
boolean ret = false;
|
||||
String ans = null;
|
||||
while (T--> 0) {
|
||||
String s = br.readLine().trim();
|
||||
StringTokenizer st = new StringTokenizer(s);
|
||||
int ch = Integer.parseInt(st.nextToken());
|
||||
int num = Integer.parseInt(st.nextToken());
|
||||
if (ch == 1) {
|
||||
op = ob.is_odd();
|
||||
ret = ob.checker(op, num);
|
||||
ans = (ret) ? "ODD" : "EVEN";
|
||||
} else if (ch == 2) {
|
||||
op = ob.is_prime();
|
||||
ret = ob.checker(op, num);
|
||||
ans = (ret) ? "PRIME" : "COMPOSITE";
|
||||
} else if (ch == 3) {
|
||||
op = ob.is_palindrome();
|
||||
ret = ob.checker(op, num);
|
||||
ans = (ret) ? "PALINDROME" : "NOT PALINDROME";
|
||||
}
|
||||
System.out.println(ans);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user