Bochnia * 'da bulunan en eski Polonya tuz madeni, sihirli bir sayı olarak düşünebileceğimiz 1248 yılında başladı . Biz üs alma sırası gelen 4 basamak eşit olduğunu görebilirsiniz: .
Tarih aslında diziden 4 hane olduğundan, daha uzun sürebiliriz. Sonsuza ulaşana kadar süreci tekrarlayabiliriz. Eğer sayı ile sınırlarsak sıra şöyle görünür2048
124816326412825651210242048
Biraz daha iyi görünmesini sağlamak için sayıları ayırabiliriz:
1|2|4|8|16|32|64|128|256|512|1024|2048
Tarihten daha uzun, özel bir dizi deneyelim. Diyelim ki 5 basamaklı olmasını istiyoruz - birden fazla olasılık var:
24816
81632
64128
Veya 3 haneli olanlar:
124
248
816
Buna 3 basamaklı sayıları da ekleyebiliriz, ancak diyelim ki bir sekansın en az iki rakamı olması gerekir .
* Bu konuda Vikipedi hakkında bilgi yok. Lehçe sürümünü girerseniz - o zaman var. Madeni ziyaret ederseniz, işçiler size 1248'de başladığını da söyleyecektir.
Meydan okuma
Temel olarak 2 ile yukarıdaki örneklerde olduğu gibi bir üs alma dizisi oluşturun.
2-27 aralığından bir sayı verildiğinde , dizinin tüm olası bölümlerini (isterseniz 2048 bir veya daha büyük) girişe eşit basamak miktarıyla çıktılayın. Bir sayıyı kesemezsiniz, bu nedenle çıktı 481
geçersizdir, çünkü 16 yarıya kadar kesilmiştir.
Kurallar:
- Standart boşluklar yasaktır.
- Girdinin aralık içindeki bir sayı olduğunu varsayabilirsiniz.
- Programınız aralıktan (28+) büyük girişleri kabul edebilir, ancak bu skoru artırmaz / azaltmaz.
- Çıktıdaki boşluklar yok sayılır. Gibi
124
veya gibi çıktı alabilirsiniz4 8 16
. - Listedeki herhangi bir karakterle
,./|
veya satır beslemeyle farklı olasılıklar ayrılmalıdır . - Dizi olarak çıktı alabilirsiniz.
- Her olasılık en az 2 farklı sayı içermelidir .
- Sen çıkış gerekir bir parçası dizisinin, değil yanyana, gibidirler sayılar karştramazsnz:
14
. - Sabit kodlu çıkışa izin verilmez, ancak tam diziyi içeren bir dizeyi / sayıyı / diziyi kodlayabilirsiniz.
- Giriş 27, tam 2048 dizisini döndürmelidir.
- Daha önce de belirtildiği gibi, sayıları kesmeyin . Ör.
16
kalmalı16
- kullanamazsın481
- kullanmalısın4816
. - EDIT: Orada yanlış bir şey söylemiş olabilirdim; 2048, programınızın desteklemesi gereken son sayıdır, daha büyük int'ler için destek ekleyebilirsiniz.
Test senaryoları
Giriş: 2
12, 24, 48
Giriş: 3
124, 248, 816
Giriş: 4
1248, 4816, 1632, 3264
Giriş: 5
24816, 81632, 64128
Giriş: 27
124816326412825651210242048
Ve sonraki sayılar ...
Herhangi bir test vakasında hata yaptıysam soruyu söyle ya da düzenle.
Bu kod golf , yani bayt içindeki en kısa kod kazanır!