30
ตัวเลขรูปสามเหลี่ยม
จำนวนสามเหลี่ยมเป็นจำนวนที่สามารถแสดงเป็นผลรวมของจำนวนเต็มบวกติดต่อกันเริ่มต้นที่ 1 พวกเขายังสามารถแสดงออกด้วยสูตรn(n + 1) / 2ที่nเป็นจำนวนเต็มบวกบาง คู่ที่เป็นตัวเลขดิจิตอลของตัวเลขถูกคำนวณด้วยวิธีต่อไปนี้: แบ่งตัวเลขออกเป็นอาเรย์ของตัวเลขเช่น 613 => [6 1 3] สำหรับแต่ละหมายเลขในอาร์เรย์ให้คำนวณnจำนวนสามเหลี่ยมที่สาม[6 1 3] => [21 1 6] รวมอาร์เรย์ผลลัพธ์ [21 1 6] => 28 งานของคุณคือรับจำนวนเต็มnคำนวณnคู่ของรูปสี่เหลี่ยมจัตุรัสซ้ำ ๆจนกระทั่งผลลัพธ์เท่ากับ 1 แล้วส่งออกค่าทั้งหมดที่คำนวณ คุณสามารถส่งออกค่าในลำดับใด ๆ และด้วยการรวมตัวเลือกของหมายเลขเดิมที่จุดเริ่มต้นของอาร์เรย์ นี่คือรหัสกอล์ฟเพื่อให้รหัสที่สั้นที่สุดชนะ กรณีทดสอบ 23 => 9 45 25 18 37 34 16 22 6 21 4 10 …