22
สลับสวิตช์บางตัวบนสวิตช์บอร์ด
แรงบันดาลใจจากความท้าทายนี้นี้ เป้าหมาย: รับสวิตช์บอร์ดที่กำหนดค่าไว้ล่วงหน้าและรายการของดัชนีสลับกลับไปที่ดัชนีที่กำหนด สวิตช์บอร์ดประกอบไปด้วยสวิตช์จำนวนหนึ่ง ( vหรือ^) ที่พัน-กันและจัดเรียงเป็นแถวที่มีความยาวต่างกัน นี่คือตัวอย่างสวิตช์บอร์ด: -v-^-v- -^-v- -v-^-v- ในการสลับกลับ / พลิกสวิตช์หมายถึงการเปลี่ยนจากvเป็น^หรือจาก^เป็นvไป สวิตช์ถูกทำดัชนีจากซ้ายไปขวา, จากบนลงล่าง เช่นในตัวอย่างด้านบนสุดท้ายvในแถวแรกจะอยู่ในตำแหน่งที่ 3 และ^ในแถวกลางจะอยู่ที่ 4 (โดยใช้การจัดทำดัชนี 1) การป้อนข้อมูล: สตริง (หรือรายการสตริง) ที่แสดงถึงสวิตช์บอร์ด มันมีการประกันเพื่อให้ตรงกับ ((-[v^])+-)(\n(-[v^])+-)*regex รายการหมายเลขว่างที่อาจเป็นตัวแทนดัชนีอาจเป็น 0 หรือ 1 (หรือบางหมายเลขก็ได้ถ้าคุณต้องการ) จัดทำดัชนี นี่คือสวิตช์ที่จำเป็นต้องพลิก เอาท์พุท: สวิตช์บอร์ดในรูปร่างเดียวกับอินพุตพร้อมกับสวิตช์ที่ระบุกลับด้าน สวิตช์ที่ไม่ระบุใด ๆ ควรรักษาสถานะเริ่มต้น กฎ: การป้อนข้อมูลจะถูกจัดรูปแบบอย่างถูกต้องเสมอและไม่มีดัชนีใดที่ให้มาเกินขอบเขต รายการดัชนีจะถูกจัดเรียงและจะไม่มีการทำซ้ำ ระบุคำตอบที่คุณใช้ในการจัดทำดัชนีไม่ว่าจะเป็น 0, 1 หรือบางข้อก็ได้ ช่องว่างต่อท้ายนั้นใช้ได้ตราบใดที่เอาต์พุตดูเหมือนอินพุต นี่คือรหัส - …