int greatestCommonPrimeDivisor(int a, int b) {
int res = -1;
for (int i = 2; i <= Math.max(a, b); i++) {
if (a % i == 0 && b % i == 0 && p(i)) {
if (res < i) res = i;
}
}
return res;
}
boolean p(int a) {
for (int i = 2; i < a; i++) {
if (a % i == 0) return false;
}
return true;
}