Autor | Zpráva | ||
---|---|---|---|
Jandak Profil |
#1 · Zasláno: 22. 10. 2012, 20:23:32
Zdavím, prosím mohl by mi někdo poradit jak vygenerovat pouze jedenkrát položku z daného seznamu tzn., aby se třeba vygenerovalo jen A vs. B C vs.D, proste aby nebyly duplicity.. díky
seznam=('A','B','C','D) self.gen = random.choice(seznam), 'vs.', random.choice(seznam) self.result.set(self.gen) |
||
peta Profil |
#2 · Zasláno: 23. 10. 2012, 14:36:54
a = random.choice(seznam)
neco jako php unset(seznam[a]) b = random.choice(seznam) neco jako php unset(seznam[b]) //nevim, jak se ted dela unset v pythonu str = a + ' vs. ' + b |
||
Tori Profil |
Jandak:
A nebyl by použitelný jiný algoritmus? - náhodně zamíchat pole - dokud pole obsahuje víc než 1 položku: - vystrčit z pole poslední dvě položky (array_pop) a složit z nich řetězec - ? něco co chcete udělat s lichou položkou, pokud může zbýt |
||
peta Profil |
To je mozna lepsi. Nejaky random sort tam bude. Polozky bych pouzil spis prvni dve.
pole2 = String.join(' vs. ',pole1[:1]) Spis se bojim, ze potreuje provest rozlosovani skupin. Tohle je priklad pro prvni dvojici. |
||
Jandak Profil |
#5 · Zasláno: 23. 10. 2012, 17:32:16
peta:
> To je mozna lepsi. Nejaky random sort tam bude. Polozky bych pouzil spis prvni dve. > pole2 = String.join(' vs. ',pole1[:1]) > Spis se bojim, ze potreuje provest rozlosovani skupin. Tohle je priklad pro prvni dvojici. jj je to na rozlosování skupin :D |
||
neutr Profil |
#6 · Zasláno: 23. 10. 2012, 20:32:01
Jestli tomu dobře rozumím, tak jde o algoritmus "Bergrových tabulek". Je to ale také problém šifer. Pokud tedy potřebujete něco takového, tak jak popisujete to nepůjde. Nejnovější řešení udělal Prof. Fronček. A dokonce uvádí, že se zabývá drobnostmi jako jsou rozhodčí ap. Jenže aplikace pro šifry předpokládá minimálně rozsah n = 256 - ASCII 8 bit, nebo až UTF16. Pokud je to něco takhle velkého, tak bych uměl poradit. Pokud je to jen málo, lze sehnat na netu pod heslem "Bergrovy tabulky - algoritmus ap".
|
||
Časová prodleva: 13 let
|
0