(แรงบันดาลใจแบบสุ่มโดย/mathpro//q/339890 )
(ที่เกี่ยวข้อง: 1 , 2 )
รับรายการอินพุตของจำนวนเฉพาะที่แตกต่างกัน (เช่น, [2, 5, 7]
), และจำนวนเต็มn
ส่งออกจำนวนเต็มบวกทั้งหมดที่เล็กกว่าอย่างเคร่งครัดn
ที่มีเฉพาะช่วงเวลาเหล่านั้นเป็นตัวหาร สำหรับการป้อนข้อมูล[2, 5, 7]
และที่นี้หมายถึงการส่งออกของn=15
[2, 4, 5, 7, 8, 10, 14]
ตัวอย่างเพิ่มเติม
[list] n | output
[2, 5, 7] 15 | [2, 4, 5, 7, 8, 10, 14]
[2, 5, 7] 14 | [2, 4, 5, 7, 8, 10]
[2] 3 | [2]
[2] 9 | [2, 4, 8]
[103, 101, 97] 10000 | [97, 101, 103, 9409, 9797, 9991]
[97, 101, 103] 104 | [97, 101, 103]
กฎและคำชี้แจง
- รายการอินพุตมีการรับประกันว่าไม่ว่างเปล่า แต่อาจเป็นเพียงองค์ประกอบเดียว
- คุณสามารถสมมติว่ารายการอินพุตถูกจัดเรียงล่วงหน้าในวิธีที่สะดวกที่สุด
n
จะใหญ่กว่าองค์ประกอบที่ใหญ่ที่สุดในรายการอินพุตเสมอ- ตั้งแต่เช่น
2**0 = 1
คุณสามารถเลือกที่จะรวม1
ไว้ในรายการเอาท์พุทของคุณ - อินพุตและเอาต์พุตสามารถกำหนดได้โดยวิธีการที่สะดวก
- คุณสามารถพิมพ์ผลลัพธ์ไปที่ STDOUT หรือส่งคืนเป็นผลลัพธ์ของฟังก์ชัน
- ยอมรับได้ทั้งโปรแกรมหรือฟังก์ชั่น
- หากเป็นไปได้คุณสามารถสมมติว่าจำนวนเต็มเข้า / ส่งออกเหมาะสมกับ
int
ช่วงดั้งเดิมของภาษาของคุณ - ช่องโหว่มาตรฐานเป็นสิ่งต้องห้าม
- นี่คือรหัส - กอล์ฟเพื่อให้ใช้กฎการเล่นกอล์ฟตามปกติทั้งหมดและรหัสที่สั้นที่สุด (เป็นไบต์) ชนะ
1
ในเอาต์พุต
[2, 3, 7]
คุณไม่สามารถ5
ใช้ได้