สลับฮาร์มอนิซีรีส์เป็นที่รู้จักกันดีชุดกัน
"ชัดเจน" เป็นที่ชัดเจนว่ามันรวมเข้ากับบันทึกธรรมชาติของ 2 หรือมันได้หรือไม่
เนื่องจากซีรีย์ไม่ได้รวมกันอย่างแน่นอนโดยเพียงแค่จัดเรียงเงื่อนไขใหม่ฉันสามารถทำให้มันเข้าใกล้ทุกสิ่งที่ฉันต้องการ สมมติว่าผมต้องการชุดที่จะมาบรรจบกันเพื่ออี สิ่งที่ฉันต้องทำคือ:
หากคุณไม่ได้จับแบบนั้นก็ไม่มีความชัดเจน นี่คือวิธีการทำงาน:
- พิจารณาข้อกำหนดของซีรีย์ฮาร์มอนิสลับในแง่ของแง่บวกและลบ
- เพิ่มคำศัพท์บวกเข้าด้วยกันเพื่อให้เกินเป้าหมาย (e) (aka
sum > target) - ลบคำลบถัดไป
- กลับไปที่ 2
โปรดทราบว่าในขั้นตอนที่ 2 หากเราsum == targetคุณควรเพิ่มคำบวกอีกคำหนึ่ง
จากนี้เราสามารถกำหนดลำดับที่เกี่ยวข้องกับแต่ละหมายเลขดังนี้:
- ทำตามอัลกอริทึมด้านบน
- สำหรับแต่ละคำที่เป็นบวกเอาต์พุต 1
- สำหรับแต่ละคำเชิงลบเอาต์พุต 0
ลองเรียกลำดับนี้ว่า "รูปแบบบิตความสามัคคี" ของตัวเลข ตัวอย่างเช่น HBP ของ e เริ่มต้นเมื่อ:
1, 1, 1, 1, <32 times>, 0, 1, 1, <54 times>, 0, 1, 1, ...
ความท้าทายของคุณ:
คุณจะได้รับ:
- เป้าหมายอินพุตที่มีเหตุผลอยู่ในช่วง [-10, 10] (หมายเหตุ: แม้การเข้าถึง 10 ผ่านซีรีย์ฮาร์มอนิกนั้นใช้เวลาหลายล้านเทอม) นี่อาจเป็นทศนิยม (aka
1.1) หรือคุณอาจใช้เหตุผลโดยตรง (aka12/100) - อินพุต
intn ที่เป็นบวกโดยระบุจำนวนเงื่อนไขของรูปแบบ Harmonious Bit เพื่อส่งออก
คุณคาดว่าจะส่งออกรูปแบบ Harmonious Bit ที่แน่นอนของเป้าหมายไปยังจำนวนคำที่ระบุ คุณสามารถส่งออกค่าที่คั่นด้วยช่องว่างคั่นด้วยเครื่องหมายจุลภาคไม่มีการแยก ฯลฯ ตราบใดที่รูปแบบของ 0s และ 1s สามารถมองเห็นได้ชัดเจนและอ่านจากซ้ายไปขวาด้วยการแยกที่สอดคล้องกัน
กรณีทดสอบ
>>> 0, 1
1
>>> 0, 2
10
>>> 0, 7
1000010
>>> 1, 10
1101011011
>>> 1.01, 3
110
>>> 1.01, 24
110101101101101101101101
>>> 2.71, 32
11111111111111111111111111111111
>>> 2.71, 144
111111111111111111111111111111110111111111111111111111111111111111111111111111111111111101111111111111111111111111111111111111111111111111111111
>>> -9.8, 100
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
โปรดทราบว่าเนื่องจาก-9.8มีขนาดใหญ่มากสิ่งแรก1ที่จะส่งออกอยู่ที่ไหนสักแห่งรอบ149496620คำศัพท์ที่ (ซึ่งคำนวณโดยผ่านทางลอยดังนั้นค่าอาจไม่แน่นอน)
h a p qแทนการh p q aบันทึกไบต์