จำนวนสามเหลี่ยมเป็นจำนวนที่สามารถแสดงเป็นผลรวมของจำนวนเต็มบวกติดต่อกันเริ่มต้นที่ 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 1
72 => 31 7 28 39 51 16 22 6 21 4 10 1
55 => 30 6 21 4 10 1
78 => 64 31 7 28 39 51 16 22 6 21 4 10 1
613 => 28 39 51 16 22 6 21 4 10 1
8392 => 90 45 25 18 37 34 16 22 6 21 4 10 1
11111 => 5 15 16 22 6 21 4 10 1
8592025 => 117 30 6 21 4 10 1
999999999 => 405 25 18 37 34 16 22 6 21 4 10 1
141
และมีn
หลัก ค่าสูงสุดของค่าที่เป็นคู่ของรูปสามเหลี่ยมสามารถมีได้45n
เช่นdigi-△(x) ≤ 45n < 45(1+log_10(x))
นั้นและสำหรับx > 141
เรามี45(1+log_10(x)) < x
ดังนั้นdigi-△(x) ≤ x-1
สำหรับx > 141
และเมื่อเราผ่าน141
ขีด จำกัด แล้วเราจะบังคับให้พิสูจน์ผ่านโปรแกรม