Yıkık
Rasgele sayılarla rasgele uzunluklu bir dizi oluşturan bir program oluşturun, ardından diziyi değiştiren bir dizi kural uygulayın. Kurallar uygulandıktan sonra, aksi belirtilmedikçe dizinin toplamını yazdırın
Dizi kurulumu
Dizi, 5 ile 10 arasında rastgele bir uzunluk ve 1 ile 20 arasında rastgele tamsayılar olmalıdır . Her dizi uzunluğu eşit olma olasılığına sahip olmalı ve her tamsayı eleman başına eşit toplama olasılığına sahip olmalıdır.
7 kural
Kurallar, sırayla uygulanmış gibi davranmalıdır (örn: kural 1, kural 2'den önce davranır) ve yalnızca bir kez uygulanır. Kural uygulamasının kanıtı için dizi, her kural uygulamasından sonra ve herhangi bir kural uygulanmadan önce konsola yazdırılmalıdır.
- Dizi 7 içeriyorsa, her öğeden 1 çıkarın
- Kural 1 uygulanırsa ve dizi şimdi 0 içeriyorsa, her öğeye 1 ekleyin
- Dizi 13 içeriyorsa, 13'ü ve ardından gelen tüm öğeleri diziden hariç tutun
- Dizi 2 içeriyorsa, tüm tek sayıları hariç tutun
- Dizi 20 içeriyorsa ve üçüncü öğe çiftse, toplam olarak 20 değerini döndürün ve sonlandırın. 20 varsa ve üçüncü öğe tekse, toplamın dizinin uzunluğunun 20 katını döndürün ve sonlandırın.
- Toplam 50'den büyükse, son öğeyi 50'den küçük veya ona eşit olana kadar tekrar tekrar kaldırın
- Dizi 16 içeriyorsa, toplamı ondalık ve onaltılı olarak yazdırın.
Misal
İşte ilk dizi,
[20, 2, 5, 7, 14, 8]
Kural 1 uygulanabilir:
[19, 1, 4, 6, 13, 7]
Ardından Kural 3 uygulanır:
[19, 1, 4, 6]
Başka kural gerekmez, bu nedenle program toplamı 30 olarak döndürür .
notlar
- Deneyimli bir kod golfçü değilim, ancak kişisel kaydım Python 3'te 369 bayt ile söylenebilir .
- Kurallar aslında sırayla uygulanmak zorunda değildir, ama sanki onlar gibi davranmak zorundadır.
[3 3 3 3 4 3]
ve [4 4 3 4 4]
her biri% 50 olasılıkla seçmek , "dizi kurulumu" altında yazılanlarla uyumludur. Yani 19
her seferinde çıktı alabilir miyim ? (Tabii ki, gerçekten düşündüğüm şey "rastgele" tanımının açıklığa kavuşturulması gerektiğidir.)
If the array contains a 20, and the third element is even/odd
, dizinin bu adımda 3'ten az öğesi varsa ne olur?