Ho un mazzo di 52 carte da poker rappresentate come array di int -   [0, 1, ... 51]   . 
Ci sono 2.598.960 combinazioni possibili di 5 carte. Posso generare tutte le combinazioni come questa:
#id      #combination
0 -       0,  1,  2,  3,  4
1 -       0,  1,  2,  3,  5
2 -       0,  1,  2,  3,  6
   ...omitted data..
2598957 - 46, 47, 49, 50, 51
2598958 - 46, 48, 49, 50, 51
2598959 - 47, 48, 49, 50, 51
 Come posso trovare efficacemente   #id    per dato   #combination    e   #combination    per dato   #id   ?