class Solution {
public int maxProduct(String[] words) {
int length = words.length;
int[] masks = new int[length];
for (int i = 0;i<length;i++){
for(int j = 0;j<words[i].length();j++){
masks[i]|=1<<(words[i].charAt(j)-'a');
}
}
int maxProd = 0;
for(int i = 0;i<length;i++){
for (int j = i+1;j<length;j++){
if((masks[i]&masks[j])==0){
maxProd = Math.max(maxProd,words[i].length()*words[j].length());
}
}
}
return maxProd;
}
}