ป.ร. ให้ไว้เป็นจำนวนเต็มและบางฟังก์ชั่นกล่องดำหาจุดคงที่ในลำดับที่กำหนดโดยx1
f: ℤ → ℤ
f
xk+1 := f(xk)
รายละเอียด
ค่า
x
มีการกล่าวถึงเป็นจุดคงที่หากf
x = f(x)
ตัวอย่างเช่นถ้า
f(x) := round(x/pi)
เรามีจุดเริ่มต้นจากนั้นเราได้รับแล้วแล้วและในที่สุดซึ่งหมายความว่าการส่งควรกลับx1 = 10
x2 = f(x1) = f(10) = 3
x3 = f(x2) = f(3) = 1
x4 = f(x3) = f(1) = 0
x5 = f(x4) = f(0) = 0
0
- คุณสามารถสมมติว่าลำดับที่สร้างขึ้นมีจุดคงที่จริง
ℤ
คุณสามารถใช้ชนิดพื้นเมืองสำหรับจำนวนเต็มในสถานที่ของ- คุณสามารถใช้ภาษาใด ๆ ที่มีค่าเริ่มต้นสำหรับการป้อนข้อมูลฟังก์ชั่นสีดำกล่องในมาตรฐานการโพสต์เมตา IO หากไม่มีการตั้งค่าเริ่มต้นสำหรับภาษาของคุณอย่าลังเลที่จะเพิ่มเข้าไปในความหมายของฟังก์ชั่นกล่องดำและตรวจสอบให้แน่ใจว่าได้เชื่อมโยงข้อเสนอของคุณในคำนิยามนั้น อย่าลืมโหวตพวกเขาด้วย
ตัวอย่าง
f(x) = floor(sqrt(abs(x)))
0 -> 0, all other numbers -> 1
f(x) = c(c(c(x))) where c(x) = x/2 if x is even; 3*x+1 otherwise
all positive numbers should result in 1,2 or 4 (Collatz conjecture)
f(x) = -42
all numbers -> -42
f(x) = 2 - x
1 -> 1
~Nƭ⁻Ç$¿
ซึ่งเป็นสิ่งที่ต้องการ for x in [0, -1, 1, -2, 2, -3, 3, -4, 4, ...]: if (x == f(x)): break; print(x);
(รหัสเทียม) นั่นอาจคุ้มค่ากับการท้าทายอื่น