Sto cercando un algoritmo per creare una lotteria, in cui a ciascun partecipante è assegnato un ticket con una serie casuale di numeri.
Ogni lotteria ha N partecipanti, e ci dovrebbe essere la stessa quantità di biglietti della lotteria, un biglietto per utente.
L'utente deve conoscere i suoi numeri di biglietto prima dell'estrazione, in modo che possa seguire il sorteggio e anticipare se è vincente.
Ogni lotteria ha un minimo di un vincitore.
Alcune lotterie possono avere due o più biglietti vincenti, mentre ogni biglietto può vincere solo una volta. Un biglietto vincente viene rimosso dalla lotteria attuale.
Se è disponibile più di un biglietto vincente, questo dovrebbe essere determinato prima dell'inizio della lotteria.
Dovrebbe essere impossibile disegnare spazi vuoti.
Come si può creare una lotteria con tali proprietà. O più nello specifico:
Come possiamo generare i numeri della lotteria e i biglietti in quanto tali, che ogni lotteria ha uno o (1 + N) biglietto vincente garantito. Come possiamo evitare gli spazi vuoti?
Lo pseudocodice sarebbe ottimo e / o alcuni indicatori di algoritmi forse noti che risolvono problemi simili.