พื้นหลัง
ในการท้าทายนี้การแสดงฐานb
ของจำนวนเต็มn
เป็นการแสดงออกของn
ผลรวมของกำลังb
ซึ่งแต่ละเทอมเกิดขึ้นได้เกือบทุกb-1
ครั้ง ตัวอย่างเช่นการ4
เป็นตัวแทนของ2015
คือ
4^5 + 3*4^4 + 3*4^3 + 4^2 + 3*4 + 3
ตอนนี้ทางพันธุกรรม base- b
ตัวแทนของn
จะได้รับโดยการแปลงเลขยกกำลังเข้าสู่ base- ของพวกเขาb
เป็นตัวแทนแล้วแปลงเลขยกกำลังของพวกเขาและอื่น ๆ ซ้ำ ดังนั้น base- ทางพันธุกรรม4
เป็นตัวแทนของ2015
มี
4^(4 + 1) + 3*4^4 + 3*4^3 + 4^2 + 3*4 + 3
ในฐานะที่เป็นตัวอย่างที่ซับซ้อนมากขึ้นฐานพันธุกรรม - การ3
เป็นตัวแทนของ
7981676788374679859068493351144698070458
คือ
2*3^(3^(3 + 1) + 2) + 3 + 1
การเปลี่ยนแปลงพื้นฐานทางพันธุกรรมของn
จากb
เป็นc
, แสดงH(b, c, n)
เป็นจำนวนที่ได้รับโดยการใช้การb
แทนฐานทางพันธุกรรมของn
, แทนที่ทุก ๆb
โดยc
, และประเมินผลการแสดงออก ตัวอย่างเช่นค่าของ
H(3, 2, 7981676788374679859068493351144698070458)
คือ
2*2^(2^(2 + 1) + 2) + 2 + 1 = 2051
ความท้าทาย
คุณจะได้รับเป็น input สามจำนวนเต็มb
, c
, n
ซึ่งคุณอาจคิดและn >= 0
การส่งออกของคุณคือb, c > 1
H(b, c, n)
การนับไบต์ที่สั้นที่สุดชนะและช่องโหว่มาตรฐานไม่ได้รับอนุญาต คุณสามารถเขียนฟังก์ชั่นหรือโปรแกรมเต็มรูปแบบ คุณจะต้องสามารถจัดการอินพุตและเอาต์พุตขนาดใหญ่โดยพลการ (bignums)
กรณีทดสอบ
4 2 3 -> 3
2 4 3 -> 5
2 4 10 -> 1028
4 4 40000 -> 40000
4 5 40000 -> 906375
5 4 40000 -> 3584
3 2 7981676788374679859068493351144698070458 -> 56761
2 3 2051 -> 35917545547686059365808220080151141317047
สนุกกับความเป็นจริง
สำหรับจำนวนเต็มใด ๆn
ลำดับที่ได้รับจาก
n1 = n
n2 = H(2, 3, n1) - 1
n3 = H(3, 4, n2) - 1
n4 = H(4, 5, n3) - 1
....
0
ในที่สุดก็มาถึง นี้เรียกว่าทฤษฎีบท Goodstein ของ
D(GHY=Z0)R&Y+*%YG^H(GHZ)(GH/YGhZ
pyth: รู้สึกอิสระที่จะเพิ่มถ้าคุณต้องการ (ฉันออกไปเคล็ดลับสำหรับการเล่นกอล์ฟใน pyth: D)