วันหนึ่งคุณตื่นเท่านั้นที่จะพบว่าตัวเองติดอยู่ในอาเรย์ คุณพยายามที่จะเดินออกไปจากที่นั่นรับดัชนีหนึ่งครั้ง แต่ดูเหมือนว่ามีกฎอื่น ๆ :
อาเรย์นั้นเต็มไปด้วยจำนวนธรรมชาติ
- หากคุณพบว่าตัวเองอยู่ในดัชนี
n
คุณไปที่ดัชนีarray[n]
ยกเว้น: - หากคุณพบว่าตัวเองอยู่ในดัชนี
n
ซึ่งเป็นจำนวนเฉพาะคุณทำarray[n]
ตามขั้นตอน
ตัวอย่าง: คุณเริ่มต้นกับดัชนี4
ในอาร์เรย์นี้ (ดัชนีเริ่มต้นคือ 0):
array = [1,4,5,6,8,10,14,15,2,2,4,5,7];
-----------------^ you are here
เนื่องจากค่าของฟิลด์ที่คุณอยู่คือ8
คุณไปที่ดัชนี8
เป็นขั้นตอนแรก 2
เขตที่ดินคุณมีค่า จากนั้นคุณไปที่ดัชนี2
เป็นขั้นตอนที่สองของคุณ ในฐานะที่2
เป็นหมายเลขเฉพาะคุณจะย้อนกลับไป 5 ก้าวซึ่งเป็นขั้นตอนที่สามของคุณ เนื่องจากไม่มีดัชนี-3
คุณจึงหลีกเลี่ยงอาร์เรย์ในขั้นตอนทั้งหมด 3 ขั้นตอน
งานของคุณคือ:
ในการเขียนโปรแกรมหรือฟังก์ชั่นซึ่งยอมรับอาร์เรย์และดัชนีเริ่มต้นเป็นพารามิเตอร์และส่งออกจำนวนขั้นตอนเพื่อหนีอาร์เรย์ ถ้าคุณไม่สามารถหลบหนีอาร์เรย์ (เช่น[2,0,2]
กับการเริ่มต้นดัชนี2
=> คุณอย่างต่อเนื่องไปจากดัชนี2
การ0
) การส่งออกมีมูลค่า falsy คุณอาจใช้การจัดทำดัชนีแบบอิงดัชนีหรือใช้ดัชนีแบบอิงศูนย์ แต่โปรดระบุว่าคุณใช้อะไร
กรณีทดสอบ
การป้อนข้อมูล: [2,5,6,8,1,2,3], 3
เอาท์พุท: 1
การป้อนข้อมูล: [2, 0, 2], 2
เอาท์พุท: false
อินพุต: [14,1,2,5,1,3,51,5,12,3,4,41,15,4,12,243,51,2,14,51,12,11], 5
;
เอาท์พุท: 6
คำตอบที่สั้นที่สุดชนะ