ฉันได้พยายามเพียงแค่เกมที่เรียกว่าโซฟา 2048
(หมายเหตุ: คุณควรมีลักษณะที่จะเข้าใจคำถามนี้ดีกว่า)
เนื่องจากมันไม่ได้น่าตื่นเต้นมากสำหรับฉันฉันจึงถามตัวเองว่า 'จนถึงปี 2048!'
นั่นเป็นแรงบันดาลใจให้ฉันโพสต์สิ่งที่ท้าทายเพราะการคำนวณสิ่งนี้ไม่ใช่เรื่องง่ายอย่างที่ฉันคิด
เป้าหมายของคุณ:
ระบุรายชื่อลูกบอลบนโซฟาคุณจะต้องแสดงจำนวนลูกบอลที่มีค่าเท่ากับ 2 ต้องตกลงมาจากฟ้าเพื่อที่จะได้เป็นผู้ชนะในเกม
- สมมติว่าอินพุตถูกต้อง
- สมมติว่าผู้เล่นจะไม่โยนลูกบอลใด ๆ
- สมมติว่าลูกบอลที่ตกลงมาจากฟากฟ้ามีค่าเท่ากับ 2 ดังที่ฉันได้กล่าวไปแล้ว
- ตัวอย่างผลลัพธ์ที่ถูกต้อง: 3, "4", [5], ["6"]
แก้ไข:
ฉันควรชี้แจงบางอย่าง:
- คุณต้องพิมพ์จำนวน 2s ที่น้อยที่สุด
กรณีทดสอบ:
[2048] -> 0คุณชนะแล้ว
[1024,1024] -> 0คุณไม่ต้องการลูกบอลเพิ่มอีกแล้วเพื่อชนะ
[1024,512,256,128,64,32,16,8,4,2] -> 1หนึ่งบอลที่ต้องใช้'เปิดใช้งานเชน'
[512] -> 768
[512,2] -> 767
[4,16,64] -> 982
หมายเหตุ :
ฉันไม่ใช่เจ้าของภาษา - บอกฉันว่าคุณเห็นตัวพิมพ์หรือข้อความที่ไม่ใช่ไวยากรณ์
หากสิ่งที่ไม่ชัดเจนให้ถามในความคิดเห็น
2048และหารด้วย2- ถ้าเป็นเช่นนั้น, คุณอาจต้องการตรวจสอบกรณีทดสอบครั้งสุดท้าย - หากไม่ได้โปรดใช้มันเป็นตัวอย่างเพื่ออธิบายว่าทำไมผลลัพธ์ถึงไม่ 982'T
[4,16,64] -> 22?