บทนำ
อาร์เรย์ชี้เป็นอาร์เรย์L
ของจำนวนเต็มภัณฑ์ที่0 ≤ L[i]+i < len(L)
ถือสำหรับดัชนีทั้งหมดi
(สมมติว่าการจัดทำดัชนี 0-based) เรากล่าวว่าดัชนีi
ชี้L[i]+i
ดัชนี อาร์เรย์ชี้เป็นห่วงlen(L)
ถ้าดัชนีรูปแบบรอบเดียวของความยาว นี่คือตัวอย่างบางส่วน:
[1,2,-1,3]
ไม่ใช่อาร์เรย์ตัวชี้เนื่องจาก3
ไม่ได้ชี้ไปที่ดัชนี[1,2,-1,-3]
เป็นตัวชี้อาร์เรย์-1
แต่ไม่ห่วงเพราะไม่มีจุดดัชนีไป[2,2,-2,-2]
เป็นอาร์เรย์ของตัวชี้ แต่ไม่ใช่การวนซ้ำเนื่องจากดัชนีจะฟอร์มสองรอบ[2,2,-1,-3]
เป็นห่วง
อินพุต
ข้อมูลที่คุณป้อนเป็นรายการที่ไม่ใช่ค่าว่างของจำนวนเต็มไม่ใช่ศูนย์ในรูปแบบที่เหมาะสม มันอาจจะไม่เรียงกันและ / หรือมีรายการที่ซ้ำกัน
เอาท์พุต
เอาต์พุตของคุณจะเป็นลูปที่มีจำนวนเต็มทั้งหมดในรายการอินพุต (และอาจเป็นจำนวนเต็มอื่น ๆ ด้วย) นับหลายหลาก พวกเขาไม่จำเป็นต้องเกิดขึ้นในลำดับเดียวกันกับในอินพุตและเอาท์พุทไม่จำเป็นต้องน้อยที่สุดในทุกแง่มุม
ตัวอย่าง
สำหรับการป้อนข้อมูล[2,-4,2]
, [2,2,-1,1,-4]
การส่งออกได้รับการยอมรับจะเป็น
กฎและการให้คะแนน
คุณสามารถเขียนโปรแกรมเต็มรูปแบบหรือฟังก์ชั่น จำนวนไบต์ต่ำสุดที่ชนะและช่องโหว่มาตรฐานไม่ได้รับอนุญาต การรวมตัวอย่างอินพุตและเอาต์พุตตัวอย่างสองสามคำตอบของคุณนั้นเป็นสิ่งที่น่าชื่นชม
กรณีทดสอบ
input -> some possible output(s)
เหล่านี้จะได้รับในรูปแบบ
[1] -> [1,-1] or [1,1,1,-3]
[2] -> [2,-1,-1] or [1,2,-2,-1]
[-2] -> [1,1,-2] or [3,1,2,-2,-4]
[2,-2] -> [2,-1,1,-2] or [2,-1,2,-2,-1]
[2,2,2] -> [2,-1,2,-2,2,-2,-1] or [2,2,2,2,-3,-5]
[2,-4,2] -> [2,2,-1,1,-4] or [2,5,1,1,1,-4,2,-7,-1]
[3,-1,2,-2,-1,-5] -> [2,3,-1,2,-1,-5] or [3,3,-1,-1,2,2,-1,6,1,1,1,1,-12,-5]
[-2,-2,10,-2,-2,-2] -> [10,-1,1,-2,-2,1,-2,-2,1,-2,-2]
[-15,15,-15] -> [15,-1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,-15,-15]
[1,2,3,4,5] -> [1,2,3,-1,4,-1,5,-1,-1,-9,-1,-1]
n = 0
เพราะสเป็คบอกว่า " จำนวนเต็มไม่ใช่ศูนย์ "