Find Fucking Number

กำหนดให้ X เป็น Array ของข้อมูลแบบ integer จำนวน n ตัว จงหาผลคูณของตัวเลข 3 ตัวจาก array X ที่มีค่าใกล้เคียงกับจำนวนเต็ม Y โดยหากมีหลายคำตอบ ให้ตอบคำตอบที่น้อยที่สุด ตัวอย่าง

Array X มีค่าดังนี้ [1, 2, 3, 4, 5], และต้องการผลลัพธ์ที่ใกล้เคียงกับ 25 ที่สุด จึงสามารถเลือกเลข 3 ตัวมาคูณกันได้ดังนี้:

1 × 2 × 3 = 6
1 × 2 × 4 = 8
1 × 2 × 5 = 10
1 × 3 × 4 = 12
1 × 3 × 5 = 15
1 × 4 × 5 = 20
2 × 3 × 4 = 24
2 × 3 × 5 = 30
2 × 4 × 5 = 40
3 × 4 × 5 = 60

เนื่องจาก 24 คือผลคูณที่ใกล้ 25 ที่สุด จำตอบของ Test case นี้จึงเท่ากับ 25

รูปแบบข้อมูล Test case

บรรทัดแรก “testcase <ชื่อ>” บอกชื่อของ Test case (อ่านข้ามได้เลย) บรรทัดที่สอง “target Y” บอกเลขที่ต้องการหาค่าใกล้เคียง บรรทัดที่สาม “size n” บอกจำนวนข้อมูลในอาเรย์ X n บรรทัดที่เหลือ “Xi” บอกค่าแต่ละค่าในอาเรย์ X

testcase example001 target 25 size 5 1 2 3 4 5 ขอบเขต

128 ≤ n ≤ 2048 1 ≤ Xi ≤ 65536 คำตอบเป็นตัวเลข 14 หลัก

Small Data

Target = 37375606804152 Ans =

Large Data

Target = 45431751451366 Ans = 45431751450537