Sorteo avanzado en python
Publicado por pythonnoob (2 intervenciones) el 14/02/2021 13:46:46
Buenas,
Debo hacer un sorteo algo complicado y no se por donde empezar.
Hay 18 grupos en los cuales hay 5 numeros:
Teniendo en cuenta esos grupos debo crear 100 tarjetas (1 tarjeta = 1 linea horizontal) y cada tarjeta tendra 58 numeros.
Los numeros se obtendran en este orden:
1 numero = 1 grupo
2 numero = 17 grupo
3 numero = 15 grupo
4 numero = 13 grupo
5 numero = 11 grupo
6 numero = 9 grupo
7 numero = 7 grupo
8 numero = 5 grupo
9 numero = 3 grupo
10 numero = 2 grupo
11 numero = 18 grupo
12 numero = 16 grupo
13 numero = 14 grupo
...
Ej de una tarjeta:
81 20 101 50 60 2 77 42 108 28 86 25 111 59 65 8 90 14 57 34 82 21 100 45 61 5 76 41 107 32 91 30 110 51 71 11 93 15 56 26 83 19 102 48 63 6 75 37 39 33 92 24 112 53 70 9 94 44
La cuestion es que no se puede repetir un numero en una tarjeta, ni tampoco se puede repetir un numero en la misma posicion en diferentes tarjetas, esto es, si en la primera tarjeta en la posicion numero 3 el numero es 101 en ninguna de las siguientes tarjetas puede ser 101 otra vez.
Adjunto .zip con el resultado deseado para que se entienda mejor.
Debo hacer un sorteo algo complicado y no se por donde empezar.
Hay 18 grupos en los cuales hay 5 numeros:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
grupo1 = [80, 81, 82, 83, 84]
grupo2 = [85, 86, 87, 91, 92]
grupo3 = [28, 29, 31, 32, 33]
grupo4 = [34, 35, 36, "21A", 26]
grupo5 = [39, 105, 106, 107, 108]
grupo6 = [44, 12, 13, 14, 15]
grupo7 = [75, 76, 77, 78, 79]
grupo8 = [88, 89, 90, 93, 94]
grupo9 = [1, 2, 3, 5, 6]
grupo10 = [7, 8, 9, 10, 11]
grupo11 = [60, 61, 62, 63, 64]
grupo12 = [65, 66, 70, 71, 72]
grupo13 = [45, 46, 47, 48, 50]
grupo14 = [51, 52, 53, 58, 59]
grupo15 = [98, 99, 100, 101, 102]
grupo16 = [103, 104, 110, 111, 112]
grupo17 = [18, 19, 20, 21, 22]
grupo18 = [23, 24, 25, "20A", 30]
Teniendo en cuenta esos grupos debo crear 100 tarjetas (1 tarjeta = 1 linea horizontal) y cada tarjeta tendra 58 numeros.
Los numeros se obtendran en este orden:
1 numero = 1 grupo
2 numero = 17 grupo
3 numero = 15 grupo
4 numero = 13 grupo
5 numero = 11 grupo
6 numero = 9 grupo
7 numero = 7 grupo
8 numero = 5 grupo
9 numero = 3 grupo
10 numero = 2 grupo
11 numero = 18 grupo
12 numero = 16 grupo
13 numero = 14 grupo
...
Ej de una tarjeta:
81 20 101 50 60 2 77 42 108 28 86 25 111 59 65 8 90 14 57 34 82 21 100 45 61 5 76 41 107 32 91 30 110 51 71 11 93 15 56 26 83 19 102 48 63 6 75 37 39 33 92 24 112 53 70 9 94 44
La cuestion es que no se puede repetir un numero en una tarjeta, ni tampoco se puede repetir un numero en la misma posicion en diferentes tarjetas, esto es, si en la primera tarjeta en la posicion numero 3 el numero es 101 en ninguna de las siguientes tarjetas puede ser 101 otra vez.
Adjunto .zip con el resultado deseado para que se entienda mejor.
- sorteo.zip(25,2 KB)
Valora esta pregunta


0