AZ (Üst ve Küçük Harf) karakterlerini kullanarak her olası karakter kombinasyonunu (8 ile 16 arasında) çıkarmak hakkında nasıl bir çıkış yapılır? 0-9 arası rakamlar, alt çizgi ve dolar işaretleri gibi birkaç özel karakter kullanılır.Ruby 8 ile 16 karakter arasında her olası karakteri (AZ, az, 0-9) çıktı
-1
A
cevap
1
@tadman bu bizim güneş sistemimizin ömrü içinde tamamlamak olmaz, ancak teoride, bunu şöyle başarabileceğimizi, dediği gibi:
chars = [*:A..:Z, *:a..:z, *0..9, ?$, ?_]
(8..16).each do |n|
chars.permutation(n) do |a|
puts a.join
end
end
Eğer çıktı satır sayısını hesaplamak isterseniz
(8..16).reduce(0) {|sum,n| sum + chars.permutation(n).size }
Not: başlamadan önce permutation
, combination
, repeated_permutation
ve repeated_combination
: karakter "kombinasyonlarını" almak için dört Array
yöntem vardır. Doğru "kombinasyonlar" grubunu aldığınızdan emin olmak için dokümanları kontrol etmeli veya deney yapmalısınız.
İlgili konular
- 1. Yuvalama Az-CSS'deki AZ-BB'de
- 2. düzgün değer elde edemez AZ
- 3. AZ CSS
- 4. Yapı, 16 bayttan daha az olan neden daha iyi
- 5. Bir dizedeki her karakter için aynı sayıda yinelenen karakteri kaldırın
- 6. olası karakter değişkenleri
- 7. Ruby: Her X karakter karakterini boşluklara yerleştirin
- 8. Her karakterden en az birini içeren sabit gruptan rastgele sıralama
- 9. Regex eşleştirme dizeleri uzunluk 150'den az karakter uzunluğunda
- 10. sahip Nasıl sourcemaps benim/az klasöründe iki AZ dosyanız
- 11. yuvarlak katlanarak .toFixed ile az sayıda()
- 12. Alt toplamı en az
- 13. jQuery UI'de en az iki karakter nasıl otomatik tamamlanır?
- 14. Raylar Atma Üretme En az hata mı?
- 15. Normal İfade - olası
- 16. C++ kadar az nesneler
- 17. Python'dan daha az, python
- 18. bifunctor az sabit tip
- 19. Az CSS "takma"
- 20. MySQL, işlevden en az
- 21. Daha az ilk çocuk
- 22. Erişim AZ css
- 23. Jquery joker karakter karakteri
- 24. MySQL, en az bir değerin
- 25. İki datetime değeri arasında çıktı metni çıktı
- 26. En az disk alanıyla Android Studio'yu kullanma
- 27. ile ara En az bir terim ile sonuçları bul
- 28. Java 8 akışları: listeden olası her eleman çifti
- 29. Çıktı utf-8 karakter django olarak json olarak
- 30. Zorunlu ActionLinks az işlem görecek
Bu programı kaç yıl çalıştırmak zorundasınız? Burada 62^16 olasılık var. Saniyede milyar iterasyonla yaklaşık 1.5 trilyon yıl. – tadman
Yığın Taşması'na Hoş Geldiniz. Buraya sormanın yanı sıra buna ne tür bir çaba harcadınız? Bu bir ödev mi? –