We use cookies to ensure you have the best browsing experience on our website. Please read our cookie policy for more information about how we use cookies.
this is the easy solution without making more method in the class mymath
//****************
import java.io.;
import java.util.;
public class Solution {
public static void main(String[] args) throws IOException {
MyMath ob = new MyMath();
Scanner br = new Scanner(System.in);
int T = Integer.parseInt(br.nextLine());
PerformOperation op;
boolean ret = false;
String ans = null;
while (T--> 0) {
String s = br.nextLine().trim();
String[] st = s.split("\\s");
int ch = Integer.parseInt(st[0]);
int num = Integer.parseInt(st[1]);
if (ch == 1) {
op = (a) -> {return a % 2 != 0;};
ret = ob.checker(op, num);
ans = (ret) ? "ODD" : "EVEN";
} else if (ch == 2) {
op = (a) -> {
if (a < 2) {
return false;
} else if (a == 2) {
return true;
} else if (a % 2 == 0) {
return false;
}
int sqrt = (int) Math.sqrt(a);
for (int i = 3; i <= sqrt; i += 2) {
if (a % i == 0) {
return false;
}
}
return true;
};
ret = ob.checker(op, num);
ans = (ret) ? "PRIME" : "COMPOSITE";
} else if (ch == 3) {
op = a -> {
String str = String.valueOf(a);
int start = 0;
int end = str.length() - 1;
while (start < end) {
if (str.charAt(start) != str.charAt(end)) {
return false;
}
start++;
end--;
}
return true;
};
ret = ob.checker(op, num);
ans = (ret) ? "PALINDROME" : "NOT PALINDROME";
}
System.out.println(ans);
}
br.close();
}
}
@FunctionalInterface
interface PerformOperation {
boolean check(int a);
}
class MyMath {
public boolean checker(PerformOperation p, int num) {
return p.check(num);
}
}
`
Cookie support is required to access HackerRank
Seems like cookies are disabled on this browser, please enable them to open this website
Java Lambda Expressions
You are viewing a single comment's thread. Return to all comments →
public class Solution {
}
@FunctionalInterface interface PerformOperation { boolean check(int a); } class MyMath { public boolean checker(PerformOperation p, int num) { return p.check(num); } }
`