นำมาจากคำถามนี้ที่ Stack Overflow ขอขอบคุณ @miles และ @Dada สำหรับการแนะนำอินพุตทดสอบที่กล่าวถึงบางกรณี
ความท้าทาย
รับอาร์เรย์ของค่าจำนวนเต็มลบศูนย์ทั้งหมดที่ไม่ได้ขนาบข้างด้วยค่าที่ไม่ใช่ศูนย์
รายการควรถูกเก็บไว้อย่างใดอย่างหนึ่งหากเป็นค่าที่ไม่ใช่ศูนย์หรือหากเป็นศูนย์ที่อยู่ใกล้กับค่าที่ไม่ใช่ศูนย์ทันที
รายการที่เก็บไว้ควรเก็บไว้ในเอาท์พุทตามลำดับที่มีในอินพุต
ตัวอย่าง
ป.ร. ให้ไว้
[2 0 4 -3 0 0 0 3 0 0 2 0 0]
ค่าที่ควรลบจะถูกทำเครื่องหมายด้วยx
:
[2 0 4 -3 0 x 0 3 0 0 2 0 x]
และผลลัพธ์ควรเป็น
[2 0 4 -3 0 0 3 0 0 2 0]
กฎระเบียบ
อาเรย์อินพุตอาจว่างเปล่า (และจากนั้นเอาต์พุตควรเป็นค่าว่างด้วย)
รูปแบบอินพุตและเอาต์พุตมีความยืดหยุ่นตามปกติ: อาร์เรย์รายการสตริงหรืออะไรก็ได้ที่สมเหตุสมผล
รหัสกอล์ฟที่ดีที่สุดน้อยที่สุด
กรณีทดสอบ
[2 0 4 -3 0 0 0 3 0 0 2 0 0] -> [2 0 4 -3 0 0 3 0 0 2 0]
[] -> []
[1] -> [1]
[4 3 8 5 -6] -> [4 3 8 5 -6]
[4 3 8 0 5 -6] -> [4 3 8 0 5 -6]
[0] -> []
[0 0] -> []
[0 0 0 0] -> []
[0 0 0 8 0 1 0 0] -> [0 8 0 1 0]
[-5 0 5] -> [-5 0 5]
[50 0] -> [50 0]
-0
ไหม
[010 0 0 01 1]
ไหม
_2
แทนได้-2
หรือไม่ บางภาษาใช้รูปแบบดังกล่าว