Pythonban milyen paranccsal lehet létrehozni egy stringet, amelyik sok egyforma betűből (pl 100 db 'a') áll?
Nem hiszem, hogy lenne erre beépített függvény, de for ciklussal két sorból megvagy.
for i in range(0,99):
....myString += "a"
Megtaláltam:
s='a'*100
Hihetetlen milyen bonyolult javában.
String str = StringUtils.repeat("a", 100);
#6: Mire kell?
Olyan 10 jegyű prímszámot keresek amiben legalább 9,8,7,... db 2-es vagy 8-as van, és egyszerűbb a '222...222' stringből kiindulni, és változtatni egy pár számjegyet.
Egyébként nem találtam olyat, amiben legalább 6 db 2-es, vagy 6 db 8-as van.
Valaki ügyesebb? :D
#3
Régen nem kódoltam pythonban, hogy lehet egyszerűbben? Mármint a kérdező által írt megoldáson kívül.
Btw a sok lepontozás után azt várnám, hogy valaki elmondja, hogy miért írtam hülyeséget, még a végén így maradok örökre. :\
Ne stringből induljál ki hanem matekozz egy kicsit. Az sosem árt. De még ha brute-force szerűen végigmész az összes számon, akkor is gyorsan találsz pár megoldást.
A brute-force mentes matek része:
Fogsz mondjuk 8 db 2-est, és hozzáfűzöl 2 számot amit 0-9 számok közül választasz ismétlődéses kombinációval. Ennek kell venni az összes egyedi permutációját. Ekkor megkapod az összes lehetséges számot, ezeken kell megnézni hogy prím e és nem 0-val kezdődik. A prímtesztet valószínűségi alapon érdemes csinálni, különben soha nem végeznél. A gmpy2 modulnak van ilyen prímtesztje.
8 darabra pl. ezek a megoldások:
2022222221, 2202222223, 2222202223, 2222220223, 2222220227, 1222222223, 2222221223, 2232222221, 2222225221, 5222222221, 2222222621, 2222262221, 2222282221, 2221222229, 2222221229, 2222222129, 2222222291, 2222222921, 2222229221, 2292222221, 2222222243, 2224222223, 2422222223, 4222222223, 2222322227, 2272222223, 2292222223, 2232222229, 3222222229, 2222224229, 2222242229, 2222222267, 2222262227, 2262222229, 2222222927, 2222222297, 2272222229, 2722222229, 7222222229
8888880881, 8888808881, 8880888883, 8888888087, 8888880887, 8888888809, 8888888089, 8888088889, 8888882881, 8838888881, 8885888881, 8888868881, 8888888891, 8888881889, 8888818889, 8888898881, 9888888881, 8888888287, 8888888383, 8888888483, 8888488883, 8488888883, 8888888837, 8888838887, 8898888883, 8888848889, 8868888887, 8888868889, 8886888889, 8688888889, 9888888887, 8888888989
Itt van a kód:
Köszi!
Már rájöttem, rossz volt a számjegy-cserélgető programom.
( 1 betűt elírtam, de egy órába telt mire rájöttem. :D )
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!