เขียนโปรแกรมหรือฟังก์ชั่นที่มีชื่อที่ออกจะกลับมาหรือลำดับขึ้นไปn
จำนวนเต็ม TH ในลำดับ Iccanobif, เอกสารเกี่ยวกับ OEIS เป็นA014258 โปรดทราบว่าเฉพาะองค์ประกอบศูนย์ในลำดับ ( 0
) จะถูกพิมพ์หากn
เป็นศูนย์
ลำดับถูกสร้างขึ้นโดยเริ่มต้นเช่นลำดับ Fibonacci มาตรฐาน แต่หลังจากเพิ่มหมายเลขก่อนหน้านี้สองหมายเลขคุณพลิกผลลัพธ์และวางศูนย์นำหน้าใด ๆ ความจริงที่น่าสนใจสำหรับฉันอย่างน้อยก็คือลำดับนี้ไม่เพิ่มขึ้นอย่างเข้มงวด (ดูรายการด้านล่าง) มันก็ดูเหมือนจะเป็น (และอาจจะเป็น) มากกว่าหรือเท่ากับลำดับฟีโบนักชีอย่างเคร่งครัด
โปรแกรมที่คุณป้อนต้องเป็นจำนวนเต็ม
ลำดับ 20 หมายเลขแรกมีให้ที่นี่เพื่อความสุขในการรับชมของคุณ:
0, 1, 1, 2, 3, 5, 8, 31, 93, 421, 415, 638, 3501, 9314, 51821, 53116, 739401, 715297, 8964541, 8389769
ช่องโหว่มาตรฐานเป็นสิ่งต้องห้าม
โปรแกรมที่สั้นที่สุดชนะ
แก้ไข: เพิ่มหมายเหตุเพื่อชี้แจงว่าลำดับเริ่มต้นด้วยองค์ประกอบศูนย์และควรรวมหากn
เป็นศูนย์
ตัวอย่างความเป็นไปได้ของ IO:
0 -> 0
1 -> 0 1
6 -> 0 1 1 2 3 5 8
17 -> [0, 1, 1, 2, 3, 5, 8, 31, 93, 421, 415, 638, 3501, 9314, 51821, 53116, 739401, 715297]
ตอนนี้มีคำตอบหลายข้อด้านล่างนี้เป็นการนำไปใช้ใน Python 2 ที่ฉันทำงานอย่างหนักเพื่อซ่อนด้วยมาร์กอัป:
ซ้ำ:
# ใกล้เคียงกับโปรแกรมเริ่มต้นของฉัน 73 ไบต์ ควรที่จะสังเกตว่าโปรแกรมนี้ ไม่สามารถเข้าถึงสแต็กล้น มันทำงานได้สำหรับ n = 5000 ในเวลาน้อยกว่า 10 วินาทีi,a,b=input(),0,1 print a while i:print b;i,a,b=i-1,b,int(str(a+b)[::-1])
recursive:
# หมายเหตุว่านี่จะพิมพ์n
บรรทัดใหม่ต่อท้าย 64 ไบต์ จะไปถึงข้อผิดพลาดล้นล้นสำหรับค่าขนาดใหญ่ของ ndef f(n,i=0,j=1):print i,n and f(n-1,j,int(str(i+j)[::-1]))or'';