Ragazzi avrei bisogno di una semplice soluzione algoritmica.
Vi presento il mio problema.
Praticamente in ingresso setto 2 variabili che sono
Nrouter (numero di router)
Nnode (numero di nodi per router)

tuttavia i nomi dei nodi sono non distinti anche se appartengono a 2 classi differenti(cioè o sono nodi semplici o sono nodi router, ma nella realtà saranno nominati tutti allo stesso modo come un vettore di n nodi)

Faccio un esempio:
supponiamo che Nrouter è 2 e Nnode è 2, avrò quindi 2 nodi per ognuno dei 2 router + i 2 router, quindi avrò in generale n(0),n(1),n(2),n(3),n(4),n(5)

manualmente potrei partizionare cosi':
n(0) il primo router
n(1) e n(2) i 2 nodi del primo router
n(3) il secondo router
n(4) n(5) i 2 nodi del secondo router

oppure mettere n(0) n(1) i 2 router e n(2) n(3) i 2 nodi del primo router e n(4) n(5) i 2 nodi del secondo router

in pratica nei 6 nodi ho bisogno di settare i 2 router,e per ogni router i 2 nodi (dato che ogni router riceverà pacchetti solo dai nodi relativi)

non so se mi sono spiegato.
qual è una semplice soluzione algoritmica che dato un numero di router e di nodi per router, e sapendo che tutti i nodi sono indistintamente (sia router che nodi) in un vettore n(0)...n(i)...., che permetta di assegnare i router ed assegnare i nodi ai vari router?vorrei evitare liste e simili, se si potesse lavorare con operazioni modulo sarebbe preferibile, anche perchè devo fare ciò in uno script tcl per ns2(simulatore di reti)
in pratica ogni router si deve settare in ricezione ,ed ogni nodo non router deve trasmettere solo al router associato attraverso un proprio canale
devo fare una cosa del tipo:
ciclo i vari nodi della rete
a seconda dell'indice posso assegnarlo come router oppure come semplice nodo connesso ad un router
#se il nodo è router
n(i) setto in ricezione
#se il nodo è nodo semplice
n(j) trasmetto al router n(i) associato (preferibilmente capire qual è l'indice i del router con operazioni come divisione e modulo)