Ciao,
non ho capito se gli array "source" (dalla quale recuperi gli elementi) devono essere scelti random oppure hanno un livello di importanza (nel senso che devono essere distribuiti in maniera equa a tutti, tipo se sono 5 gruppi e ci sono 4 elementi nel primo array se ne distribuisce uno a gruppo e al quinto si da il primo del secondo array)