นี่คือด้ายของตำรวจ ด้ายโจรไปที่นี่
สุดท้ายตำรวจและโจรด้ายที่มีอยู่แล้ว4 เดือนที่ผ่านมา
ภารกิจของตำรวจ
- ภารกิจของตำรวจคือการเขียนโปรแกรม / ฟังก์ชั่นที่ใช้จำนวนเต็มบวก (หรือไม่ใช่ลบ) และเอาท์พุท / ส่งกลับจำนวนเต็มอื่น
- ตำรวจต้องระบุว่าหากโปรแกรมนั้นมีความอดทนต่อศูนย์
- ตำรวจจะให้อินพุต / เอาต์พุตตัวอย่างอย่างน้อย2ตัวอย่าง
- ตัวอย่างเช่นถ้าฉันตัดสินใจที่จะเขียนลำดับฟีโบนักชีฉันจะเขียนคำตอบของฉัน:
a (0) ส่งคืน 0 a (3) ส่งคืน 2
- จำนวนตัวอย่างขึ้นอยู่กับดุลยพินิจของตำรวจ
- อย่างไรก็ตามลำดับจะต้องมีอยู่จริงในสารานุกรมออนไลน์ของ Integer Sequences®ดังนั้นจึงไม่มีตัวสร้างตัวเลขสุ่มหลอกให้คุณ
:(
- ตำรวจสามารถซ่อนตัวละครได้มากเท่าที่ต้องการ
- ตัวอย่างเช่นหากโปรแกรมของฉันคือ:
function a(n)
if n>2 then
return n
else
return a(n-1) + a(n-2)
end
end
- จากนั้นฉันจะซ่อนอักขระเหล่านี้ตามที่ต้องการ:
function a(n)
if ### then
########
else
######################
end
end
ภารกิจของโจร
- เห็นได้ชัดว่าการค้นหารหัสต้นฉบับดั้งเดิม
- อย่างไรก็ตามซอร์สโค้ดที่เสนอมาใด ๆ ที่สร้างชุดเอาต์พุตเดียวกันจะนับว่าถูกต้องตราบใดที่มันยังพบใน OEIS
เคล็ดลับสำหรับตำรวจ
ฟังก์ชั่นการค้นหาใน OEIS ใช้งานได้สำหรับคำที่ต่อเนื่องกันเท่านั้นดังนั้นหากคุณต้องการซ่อนลำดับของคุณจากนั้นก็ทิ้งช่องไว้ที่ใดก็ได้- เห็นได้ชัดว่าไม่มีวิธีที่จะซ่อนลำดับ ใส่สิ่งนี้ไว้ในใจเมื่อคุณเลือกลำดับ
คะแนนของคุณคือจำนวนไบต์ในรหัสของคุณ
ผู้ชนะจะได้รับการยื่นโดยมีคะแนนต่ำสุดที่ไม่แตกภายใน 7 วัน
เฉพาะผลงานที่โพสต์ในเดือนเมษายน 2559 เท่านั้นที่มีสิทธิ์ได้รับรางวัล ส่งที่โพสต์ช้ากว่านี้จะยินดี แต่ไม่สามารถชนะ
ในการรับสิทธิ์ผู้ชนะคุณต้องเปิดเผยรหัสเต็มและลำดับ OEIS (หลังจาก 7 วัน)
โพสต์ของคุณควรมีรูปแบบดังนี้ (NN คือจำนวนตัวอักษร):
Lua ขนาด 98 ไบต์
เอาท์พุท:
a(0) returns 0
a(3) returns 2
รหัส ( #
ทำเครื่องหมายตัวอักษรที่ไม่เปิดเผย):
function a(n)
if ### then
########
else
######################
end
end
หากรหัสแตกให้ใส่[Cracked](link to cracker)
ในส่วนหัว หากการส่งนั้นปลอดภัยให้ใส่ "ปลอดภัย" ในส่วนหัวและเปิดเผยรหัสเต็มในคำตอบของคุณ เฉพาะคำตอบที่เปิดเผยรหัสเต็มเท่านั้นที่จะมีสิทธิ์ได้รับรางวัล
a(1000)
? (ซึ่งเป็นส่วนหนึ่งของลำดับ แต่มีขนาดใหญ่เกินกว่าที่จะค้นหาได้ใน OEIS)
_
, fyi