Bu bir polis ve soyguncular biçimine aşina değilseniz, wiki'ye gitmek için etiketi tıklayın. Bu soru için bir soyguncu konusu olmayacak.
Polisler
Polis olarak göreviniz , Tamsayı Dizilerinin Çevrimiçi Ansiklopedisinden iki dizi seçmek ve bir dizinin n. Öğesini girdi olarak alan ve ikinci dizinin n. Öğesini çıkaran bir program yazmaktır. Daha sonra kodu içeren ve seçilen sekansları atlayan bir cevap verirsiniz. Soyguncular, seçtiğiniz sekansları bulmaya çalışır ve eğer aklınızdaki sekansları veya programınız için cevabınızı Çatlak olarak işaretlemeniz gereken diğer sekansları bulmayı başarırsa . Bir hırsız size geçerli olmadığına inandığınız bir çatlak bildirirse, çatlak olmadığına dair bir kanıt sunabilirsiniz. Aksi takdirde işaretlemelisiniz.
Her zamanki gibi 7 gün boyunca kırılmamış olan cevaplar güvenli olarak işaretlenmeye uygundur. Bir Polis, aklındaki dizileri ortaya çıkararak cevaplarını güvenli olarak işaretleyebilir. Güvenli bir kez cevap artık kırılamaz.
Amaç, programa bağlı kalmadan bayt sayısını en aza indirmektir.
Misal
Aşağıdaki Python kodu A000290'ın nth elemanını (kare sayılar) A000217'ye (üçgen sayılar) çevirir :
lambda x:sum(range(0,int(x**.5+1)))
Koşullar ve Gereklilikler
Sonlu olduğu kanıtlanmamış bir dizi seçerseniz, yalnızca OEIS sayfasında listelenenlerin değil, olabilecek tüm terimlerin çıktısını almalısınız
Sonsuz kesinlik tamsayıları olmayan önceki kural dillerinin bir istisnası olarak, sayıları aralıklarının dışına çıkarmak veya girmek zorunda değildir.
Giriş dizinizin boyutunun, çıkış dizisinden daha küçük olduğu kanıtlanmamış olmalıdır.
Giriş dizininizde yinelenen öğeler olmamalıdır (aksi takdirde görev hemen hemen imkansızdır)
OEIS, sayfalarında bir dizin içerir ("OFFSET" başlığından sonraki ilk sayı), varsayılan olarak bu, n (ofsetteki ilk öğenin dizinine eşittir) için ötelemenizdir. senin cevabın.
OEIS'de listelenenden farklı bir ofset seçerseniz, yine de giriş dizinizdeki tüm öğeleri çıkış dizinizdeki karşılık gelen öğeyle eşlemelisiniz.
Programınız giriş sırasında olmayan bir girdi alırsa, istediği her şeyi yapabilir (tanımlanmamış davranış). Ancak yine de bir tamsayı çıkarması sizin yararınıza olacaktır.
Kodunuzu yürütmeyi zorlaştırarak, yürütmeyi zaman alıcı hale getirerek veya özgür olmayan dil seçimi yoluyla kasıtlı olarak çalıştırmak zor değildir . İkincisini zorlayacağım halde, ilkini nesnel olarak uygulayamam. Bununla birlikte, eğlence uğruna, daha zayıf bilgisayarları olanlar için zorluğu özellikle zorlaştırdığı için eskisini denememeniz için size yalvarıyorum.
soyguncuları
Soyguncular olarak göreviniz, çatlamayan, güvensiz cevapları seçmek ve aralarındaki dizileri bulmaktır. Bir çözüm bulursanız, çalışan bir çözüm bulursanız (mutlaka Polislerin tasarladığı çözüm değil), sıraları uygun cevapta yorumlayın.
Soyguncular, iki özel dizinin bir çözüm olduğunu doğrulamak konusunda çok endişelenmemeli, OEIS'teki tüm girişlerle eşleşiyorsa bir çözüm yayınlamalıdır. Bu bir polisin aklındaki sıra değilse, polis yanlış olduğunu kanıtlayabilir veya bulamazsa çatlamış olarak işaretleyebilir.