Golf Zinciri (Polisler Konusu)


13

Bu bir Polisler ve Soyguncular mücadelesi. Soyguncular için buraya gidin .

Polislerin üç görevi var.
1) bir dizisini seçin OEIS .

2) Giriş verildiğinde n, tüm normal kurallarını kullanarak çıktıların A(n)( A(n)seçilen sıra nerede) çıktısı olan bir dil seçin (bunun bir golflang olması önerilir, ancak olması gerekmez) . Bu dile L A ve C A kodunu verin . Örneğin, Jelly ve Jelly_code .

3) Daha sonra, farklı bir dil seçin (bunun bir golflang dışı olması önerilir, ancak olması gerekmez) ve yine tüm alışılmış kurallarına uyarak , C A giriş ve çıkış kodu almayan bir . (Not: bu gizlenmiş bir kod olabilir ve mutlaka golf oynamak zorunda değildir, ancak bu kod ne kadar uzun olursa, soyguncuların gönderiminizi kırması o kadar kolay olacaktır.)
Bu dili L B ve kod C B olarak adlandırın .
Örneğin, Python ve Python_code .

Bu sorun için Cop'ın gönderme dizisi (0- ya da 1-endeksli olsun belirtilen), iki dil adıdır L bir ve L B (ve birinci kısım çözer) ve bayt sayımı B , sadece. Her iki parçanın gerçek kodunu ve C A'nın uzunluğunu gizli tutun .

Polis için, L A ve L B belgelerine bağlantılar veya bir tercüman (veya her ikisini de içerdiği için bir TIO bağlantısı) takdir edilir, ancak gerekli değildir.

Babaannenin zorluk Cops' giriş ve yazma kodu seçmektir C C aynı içinde L B çıkışı dilinde bazı aynı kod L A dili olduğunu çözer orijinal OEIS görev. Uzunluğu Cı- C , artık uzunluğundan olabilir Cı- B polis (olsa daha kısa olabilir) ile gösterildiği gibi. Not: tarafından üretilen kod C C gelmez değil eşleşmesi gerekir C A .

Örneğimiz için bu, Robber'ın orijinal OEIS dizisini çözen Jelly kodunu veren Python kodunu yazması ve Python kodunun Polis tarafından ortaya çıkarılan uzunluktan daha uzun olmaması gerektiği anlamına gelir.

Kazanma koşulları

Bir hafta içinde kırılmayan cevaplar çözümlerini ortaya çıkarabilir, bu noktada Güvenli olarak kabul edilirler . Bir hafta sonra çözümünüzü ortaya çıkarmazsanız, yine de kırılabilir. En kısa Güvenli cevabı olan Polis kazanır.



OEIS dizisini gizli tutuyor muyuz?
juniorRubyist

@juniorRubyist Hayır, Polis hangi sırayı kullandıklarını ve 0- veya 1 dizinli olup olmadığını belirtmelidir.
AdmBorkBork

Yanıtlar:


3

OEIS A000041 , kırık tarafından ETHproductions

Bunu başka bir şekilde deneyelim: golflang golflang dışı üretir.

a (n) = n'nin bölüm sayısı (bölüm numaraları).

  • a (n) (0 dizinli) bir JavaScript işlevi (ES6) tarafından döndürülür
  • JS işlevini çıktılayan program Jelly dilinde yazılmıştır.
  • Jelly programının uzunluğu 35 bayttır

Amaçlanan çözüm

Jelly: JS “¦ṚoIwƭ- ḊFæSḂ¥¶Ẉ|ḊJƓƝʋnrB⁾’b28+40Ọ

çıktısı

:C=(A,B=A)=>A<0?0:A?B?C(A,B-1)+C(A-B,B):0:1


Kırık . Birkaç saat kaybetmiş gibi
görünsem

@ETHproductions Güzel! JS çözümüm, Jelly tarafında temel-28 tamsayı olarak sıkıştırılabilmesi için sınırlı bir karakter aralığı kullanıyordu.
Arnauld

@ETHproductions Adamım, JS kodunu optimize etmek için daha fazla zaman harcamalıydım. İşte 31 baytlık bir çözüm. ¯ \ _ (ツ) _ / ¯
Arnauld

2

OEIS A048272 , kırık tarafından DJMcMayhem

Garip bölenler sayısı n bile Bölen eksi sayısı n (1 endeksli).

  • A (n) çıktısı veren program 05AB1E'de yazılmıştır .
  • 05AB1E programını çıkaran program Brain-Flak + -Abayrağına yazılır .
  • Beyin Flak programının uzunluğu 198 bayt (bayt sayısı etmez değil bayrak).

Bildiğim kadarıyla yığın manipülasyon hileleri ve diğer kolmogorov-karmaşıklık hileleri kullanarak Brain-Flak programını kolayca golf oynayabileceğimi unutmayın, ancak bunu ilk gönderim olarak basit tutmak istedim. İyi şanslar soyguncular!

Aklımda ne vardı

05AB1E: ÑÈD<)O(O

Brain-Flak:(((((((((((()()()){}){}){({}[()])}{}())[((((()()()){}){}())){}{}])((((()()()){}){}())){}{})[((((()()()){}){})()){}{}])(((()()()){})){}{}())(()()()()){})(((((()()()()){}){}){}()){}){})((()()())){}{})



@DJMcMayhem :( Yeni bitirdim
HyperNeutrino

@DJMcMayhem Güzel! Bundan sonra biraz daha zor bir şey deneyeceğim.
Bay Xcoder

2

OEIS 000035 , kırık tarafından betseg

Sorun Proton'da çözüldü .
Proton kodu Python tarafından verilir .
Python programının uzunluğu 13 bayttır .

Yeni başlayanlar için gerçekten kolay bir (Proton: D biliyorsanız). Sıfır endekslendi.

Amaçlanan Çözüm

Python: print("(2%)")
Proton: İkili / monadik işlev kısayolları belgelenmediği için yeterince kısa (2%)
olmasına izin verdim n=>n%2.


7
Tam olarak sıfır belgelere sahip gibi görünen bir dil biliyorsanız, gerçekten kolay olanı. Evet harika.
Peter Taylor

3
Neden A34 bağlantısı ...
user202729


@ user202729 Düzeltildi
HyperNeutrino

@PeterTaylor tam olarak sıfır onu çözmek için burada yeterli ...
HyperNeutrino


1

OEIS A055642 , kırık tarafından Lynn

N'nin ondalık genişlemesindeki basamak sayısı

Bu muhtemelen çok kolay, ama biraz zaman aldı, bu yüzden umarım dışarıda biri nihayet çözdüğümde olduğu gibi hayal kırıklığına uğrayacaktır: D

  • (N) yazan program 05AB1E'de yazılmıştır.
  • 05AB1E programını yazdıran program TeX dilinde yazılmıştır.
  • TeX programı 6 bayt uzunluğunda

Aklımda ne vardı:

Sg
Sg\byeTeX kodu olarak 05AB1E kodu olarak



1
@ Evet evet. Ne kadar hayal kırıklığına uğradın?
Simon Klaver

1

OEIS A000668 , kırık tarafından Lynn

Mersenne asal (formunun 2 s -1 burada p bir asal)

  • a (n) bir Jelly tam programı tarafından verilir.
  • n , 1 endekslidir.
  • Jelly programı, uzunluğu 38 bayt olan bir Üçgenlik programı tarafından yazdırılır .

Farklı strateji: diziyi bir golflang'da çöz ve programı esolang'da çıkar.

Amaçlanan çözüm


Uzunluğun doğru olduğundan emin misiniz? Dokümanlar, bir Üçgenlik programının 2*n^2 - 138
Lynn

1
@Lynn Bu , bayt sayısını değil, karakter sayısını ifade eder .
Bay Xcoder

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.