เรากำหนดbinarrayเป็นอาร์เรย์ที่ตอบสนองคุณสมบัติดังต่อไปนี้:
- มันไม่ว่างเปล่า
- ค่าแรกคือ
1
- ค่าสุดท้ายคือ
1
- ค่าอื่น ๆ ทั้งหมดเป็นอย่างใดอย่างหนึ่ง
0
หรือ1
ตัวอย่างเช่นอาร์เรย์[ 1, 1, 0, 1 ]
เป็นbinarray ที่ถูกต้อง binarray
งาน
ด้วยอาร์เรย์ที่ไม่ว่างAของจำนวนเต็มไม่เป็นลบและเลขจำนวนเต็มบวกNงานของคุณคือค้นหาbinarray B ที่มีความยาวNซึ่งอนุญาตให้สร้างAโดยการรวมจำนวนสำเนาBที่ไม่ จำกัด ซึ่งถูกย้ายโดยจำนวนที่ไม่ จำกัด ตำแหน่ง
ตัวอย่าง
A = [ 1, 1, 2, 4, 1, 2, 2, 1, 0, 1, 0, 1, 1, 0, 1 ]
N = 4
สำหรับอินพุตนี้binarray B = [ 1, 1, 0, 1 ]
จะเป็นคำตอบที่ถูกต้องเพราะเราสามารถทำได้:
[ 1, 1, 0, 1 ]
+ [ 1, 1, 0, 1 ]
+ [ 1, 1, 0, 1 ]
+ [ 1, 1, 0, 1 ]
+ [ 1, 1, 0, 1 ]
+ [ 1, 1, 0, 1 ]
-----------------------------------------------
= [ 1, 1, 2, 4, 1, 2, 2, 1, 0, 1, 0, 1, 1, 0, 1 ]
กฎระเบียบ
- สามารถป้อนข้อมูลในรูปแบบที่เหมาะสม
- เอาต์พุตอาจเป็นอาร์เรย์ดั้งเดิม (เช่น
[1, 1, 0, 1]
) หรือสตริงไบนารีที่มีหรือไม่มีตัวคั่น (เช่น"1,1,0,1"
หรือ"1101"
) - คุณจะต้องพิมพ์หรือส่งคืนbinarray ที่ถูกต้องเพียงหนึ่งใบเท่านั้น หรือคุณอาจเลือกพิมพ์หรือส่งคืนทั้งหมดเมื่อมีวิธีแก้ไขปัญหาหลายประการ
- คุณไม่จำเป็นต้องสนับสนุนอินพุตที่ไม่นำไปสู่โซลูชันใด ๆ
- ผลรวมอาจรวมถึงศูนย์นัยที่ไม่ทับซ้อนกับสำเนาใด ๆB ศูนย์ที่สองในผลรวมข้างต้นนั้นเป็นศูนย์โดยปริยาย
- คุณสามารถสันนิษฐานได้ว่าขนาดสูงสุดของAคือ 100 และขนาดสูงสุดของBคือ 30
- นี่คือรหัสกอล์ฟดังนั้นคำตอบที่สั้นที่สุดในหน่วยไบต์ชนะ ช่องโหว่มาตรฐานเป็นสิ่งต้องห้าม
กรณีทดสอบ
Input : N = 1 / A = [ 1, 2, 3, 4, 5 ]
Output: [ 1 ]
Input : N = 2 / A = [ 1, 2, 100, 99 ]
Output: [ 1, 1 ]
Input : N = 3 / A = [ 1, 1, 1 ]
Output: [ 1, 1, 1 ]
Input : N = 3 / A = [ 1, 1, 3, 2, 2 ]
Output: [ 1, 1, 1 ]
Input : N = 3 / A = [ 1, 0, 2, 1, 1, 1, 0, 0, 1, 0, 1 ]
Output: [ 1, 0, 1 ]
Input : N = 4 / A = [ 1, 2, 2, 2, 1 ]
Output: [ 1, 1, 1, 1 ]
Input : N = 4 / A = [ 1, 1, 2, 4, 1, 2, 2, 1, 0, 1, 0, 1, 1, 0, 1 ]
Output: [ 1, 1, 0, 1 ]
Input : N = 4 / A = [ 1, 1, 0, 2, 1, 0, 1 ]
Output: [ 1, 0, 0, 1 ] or [ 1, 1, 0, 1 ]
Input : N = 5 / A = [ 1, 3, 6, 9, 8, 6, 3, 4 ]
Output: [ 1, 1, 1, 0, 1 ]
Input : N = 8 / A = [ 2, 1, 0, 2, 3, 3, 1, 2, 1 ]
Output: [ 1, 0, 0, 1, 1, 1, 0, 1 ]
Input : N = 10 / A = [ 1, 2, 1, 2, 2, 1, 3, 3, 3, 2, 3, 0, 2, 1, 1, 0, 1 ]
Output: [ 1, 1, 0, 1, 0, 1, 1, 1, 0, 1 ]
Input : N = 13 / A = [ 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1 ]
Output: [ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 ]
Input : N = 5 / A = [ 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1 ]
Output: [ 1, 1, 1, 1, 1 ]
Input : N = 6 / A = [ 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1 ]
Output: [ 1, 0, 0, 0, 0, 1 ]
Input : N = 7 / A = [ 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1 ]
Output: [ 1, 1, 0, 0, 0, 1, 1 ]
Input : N = 9 / A = [ 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1 ]
Output: [ 1, 0, 1, 0, 1, 0, 1, 0, 1 ]
N=4, A = [ 1, 1, 2, 4, 1, 2, 2, 2, 1, 2, 2, 1, 2, 0, 1 ]
คุณจะได้รับ 30459 ซึ่งหารด้วย 11 และ 13 ได้เพียงหนึ่งเดียวเท่านั้น[ 1, 1, 0, 1 ]
และ[ 1, 0, 1, 1 ]
เป็นคำตอบที่ถูกต้อง
N
ที่ควรได้รับการสนับสนุนอย่างสมเหตุสมผลคืออะไร