10
แยกพลิกและรวบรวมจำนวนเต็มอีกครั้ง
พื้นหลัง เป็นที่รู้จักกันดีในวิชาคณิตศาสตร์ที่สามารถใส่จำนวนเต็มลงในการติดต่อแบบหนึ่งต่อหนึ่งกับคู่ของจำนวนเต็ม มีหลายวิธีที่เป็นไปได้ในการทำเช่นนี้และในการท้าทายนี้คุณจะใช้หนึ่งในนั้นและการดำเนินการแบบผกผัน งาน n > 0ข้อมูลของคุณเป็นจำนวนเต็มบวก เป็นที่ทราบกันว่ามีอยู่จำนวนเต็มไม่ซ้ำกันที่ไม่ใช่เชิงลบดังกล่าวว่าa, b ≥ 0 การส่งออกของคุณเป็นรุ่น "พลิก" ของที่จำนวนเต็มบวกn == 2a * (2*b + 1)n2b * (2*a + 1) คุณสามารถสันนิษฐานได้ว่าอินพุตและเอาต์พุตเหมาะสมกับประเภทข้อมูลจำนวนเต็มแบบไม่ได้ลงนามมาตรฐานของภาษาของคุณ กฎและการให้คะแนน คุณสามารถเขียนโปรแกรมเต็มหรือฟังก์ชั่น จำนวนไบต์ต่ำสุดที่ชนะและช่องโหว่มาตรฐานไม่ได้รับอนุญาต กรณีทดสอบ สิ่งเหล่านี้ถูกกำหนดในรูปแบบin <-> outเนื่องจากฟังก์ชั่นที่จะใช้งานนั้นเป็นค่าผกผันของตัวเอง: หากคุณป้อนข้อมูลกลับคืนคุณควรรับอินพุตต้นฉบับ 1 <-> 1 2 <-> 3 4 <-> 5 6 <-> 6 7 <-> 8 9 <-> …