ฉันสังเกตเห็นว่ามาตรวัดระยะทางรถยนต์ของฉันอยู่ที่ 1,01101 เมื่อฉันไปทำงานวันนี้ อันไหนเป็นจำนวนที่เท่เพราะมันเป็นเลขฐานสอง (และ palindrome แต่นั่นไม่สำคัญ) ตอนนี้ฉันอยากรู้ว่าครั้งต่อไปฉันจะอ่านเลขฐานสองเมื่อใด ฉันไม่สามารถอ่านมาตรวัดระยะทางในขณะที่ฉันขับรถเพราะนั่นจะเป็นอันตรายดังนั้นมันจะต้องเป็นเลขฐานสองทั้งเมื่อฉันไปทำงานหรือกลับบ้าน
มีการจราจรติดขัดระหว่างทางไปและกลับจากออฟฟิศของฉันดังนั้นฉันต้องใช้เส้นทางที่แตกต่างกันในแต่ละวัน
สำหรับวัตถุประสงค์ของการท้าทายนี้วันหนึ่งเป็นการเดินทางไปกลับและเริ่มต้นด้วยการเดินทางของฉันเพื่อทำงาน
คุณจะต้องอ่านค่าเริ่มต้นของมาตรวัดระยะทางและลำดับองค์ประกอบ 10 รายการที่แสดงถึงจำนวนไมล์ในแต่ละวิธี ลำดับนี้ควรทำซ้ำจนกว่าคุณจะได้รับการอ่านมาตรวัดระยะทางไบนารี จากนั้นคุณควรส่งออกจำนวนวันที่ต้องใช้จนกว่าเราจะได้รับการอ่านแบบไบนารี
ทั้งระยะทางสำหรับเส้นทางและการอ่านมาตรวัดระยะทางจะเป็นจำนวนเต็มบวก จำนวนวันจะเป็นx
หรือx.5
ดังนั้นผลลัพธ์ของการนับวันของคุณจำเป็นต้องสนับสนุนจุดลอยสำหรับครึ่งวัน .0
ถ้านับวันเป็นจำนวนเต็มคุณไม่จำเป็นต้องส่งออก เครื่องวัดระยะทางจะเข้าสู่สถานะไบนารีในที่สุด
รูปแบบใด ๆ ของอินพุต / เอาต์พุตเป็นที่ยอมรับและไม่อนุญาตช่องโหว่มาตรฐาน
กรณีทดสอบ:
101101, [27, 27, 27, 27, 27, 27, 27, 27, 27, 27] == 165.0
1, [13, 25, 3, 4, 10, 8, 92, 3, 3, 100] == 22.5
2, [2, 3, 1, 2, 7, 6, 10, 92, 3, 7] == 2.0