* integer arr be divided into pa
/**
* integer arr be divided into pairs
* return pairs number depend on
* parameter k : key is a factor of pairs sum multiply element
* constraints
* 2<=n<=100 arr size
* 1<=k<=100 multiply element factor
* 1<=ar[i]<=100 arr element value
*
* @param n
* @param k
* @param ar
* @return
*/
public static int divisibleSumPairs(int n,int k,Listar) {
if (n <2 ||n >100) {
return 0;
}
if (k <1 ||k >100) {
return 0;
}
if (ar ==null) {
return 0;
}
if (ar.isEmpty()) {
return 0;
}
Random random =new Random();
int count =0;
ArrayListstringArrayList2 =new ArrayList<>();
while (true) {
int arrIndex =random.nextInt(ar.size());
int arrIndexNextSeeds =random.nextInt(ar.size());
if (!(arrIndexNextSeeds ==arrIndex)) {
Integer i =ar.get(arrIndex);
Integer i1 =ar.get(arrIndexNextSeeds);
stringArrayList2.add(arrIndex+"-"+arrIndexNextSeeds+"-"+i+"-"+i1);
}
count++;
if (count >1000000) {
break;
}
}
HashSetstringHashSet =new HashSet<>();
for (String s :stringArrayList2) {
stringHashSet.add(s);
}
ArrayListstringArrayList1 =new ArrayList<>();
for (String e :stringHashSet) {
String[]split =e.split("-");
String s2 =split[2];
String s3 =split[3];
int i =Integer.valueOf(s2) +Integer.valueOf(s3);
int i1 =i %k;
if (i1 ==0) {
stringArrayList1.add(e);
}
}
return stringArrayList1.size()/2;
}