Temo che la specificazione che ciascun concorrente DEBBA incontrare una e una sola volta ciascuno degli altri sia irrealistica da garentire a priori. Dovrai accontentarti della speranza che la seguente procedura non ti provochi casini enormi.
------------------------------
Avendo tu già occupato le lettere maiuscole per nominare le sponde e i numeri naturali per indicare i posti, per individuare i concorrenti restano solo le lettere minuscole, "z" esclusa:
* "abcdefghijklmnopqrstuvwxy"
e inoltre per individuare le sei gare ogni sponda avrà un suffisso in [1, 6].
---------------
La distribuzione dei posti si organizza in una tabella di
* cinque colonne (una per ciascun posto di sponda) intestate {1, 2, 3, 4, 5} in riga zero e precedute da una colonna zero di {etichetta}
* trenta righe dopo la zero (una per ciascuna sponda di ciascuna gara) etichettate {A1, A2, ..., E6}.
---------------
Serve anche una tabella ausiliaria quadrata, di 25 righe e 25 colonne intestate ai concorrenti, su cui spuntare gli accoppiamenti già assegnati. Nomino le tabelle
* D (distribuzione)
* S (spunta)
------------------------------
«L'assegnazione delle sponde e quindi anche l'abbinamento di ogni concorrente ad ogni sponda viene fatta precedentemente.»
In quell'occasione, alla presenza di tutti, per prima cosa farai sorteggiare DAI CONCORRENTI STESSI i nomi dei dieci che avranno il posto di estremo sponda per tre volte invece di due.
Poi inizierete il riempimento della tabella D, attività per cui suggerisco una procedura per approssimazioni successive.
---------------
Fase uno: riempimento della colonna uno ponendo i concorrenti da "a" a "y" nelle prime venticinque righe e cinque dei sorteggiati nelle ultime cinque.
---------------
Fase due: riempimento della colonna cinque ponendo gli altri cinque sorteggiati e tutti da "a" a "y" in caselle che non provochino duplicato con la casella in colonna uno della stessa riga.
Nella tabella S si spunta la casella nella riga di chi è al primo posto e la colonna di chi è al quinto posto.
---------------
Fase tre: riempimento riga per riga delle colonne {2, 3, 4}.
Scorrendo ordinatamente la lista dei nomi da sinistra a destra porre nella casella 2 della riga 1 (abbreviata D[1, 2]) il primo nome che, nella tabella S nella riga di D[1, 1], non sia ancora spuntato; poi spuntarlo e ripetere per riempire D[1, 3] e D[1, 4].
Proseguire con D[2, *] e successivi fino a D[30, *].
---------------
Fase quattro, FONDAMENTALE PER EVITARE FUTURI RICORSI: ottenere l'approvazione da almeno una quindicina dei concorrenti con una formale votazione a voto palese per appello nominale verbalizzato e controfirmato da tutti.