Intro
บางสิ่งที่ฉันเคยเล่นด้วยในวิชาคณิตศาสตร์เพื่อการสันทนาการได้สร้างตารางตัวหารเพื่อเปรียบเทียบ / เปรียบเสมือนตัวหารหลักของชุดตัวเลข ชุดของหมายเลขอินพุตอยู่ด้านบนสุดเป็นป้ายชื่อคอลัมน์ตัวคั่นหลักอยู่ทางซ้ายเป็นป้ายชื่อแถวและเครื่องหมายจะระบุตำแหน่งที่ทั้งสองบรรทัดขึ้น
ตัวอย่างเช่นสำหรับการป้อนข้อมูล6, 9, 14, 22
ตารางคล้ายกับต่อไปนี้จะถูกสร้างขึ้น:
6 9 14 22
2 * * *
3 * *
7 *
11 *
นี้เป็นเพราะ6
มีตัวหารที่สำคัญของ2
และ3
, 9
มีตัวหารที่สำคัญของ3
และอื่น ๆ
การก่อสร้าง
- ตารางถูกสร้างขึ้นเพื่อให้ป้ายชื่อคอลัมน์ในรูปแบบตัวเลขที่คั่นด้วยช่องว่างและเรียงลำดับจากน้อยไปมาก (คุณสามารถสันนิษฐานได้ว่ามีการจัดเรียงไว้ล่วงหน้า) และตัวคั่นหลักจะแสดงรายการทางด้านซ้ายในลำดับจากน้อยไปหามาก ป้ายชื่อ
- โปรดทราบว่าอาจต้องใช้ช่องว่างนำหน้าบนตัวหารหลักและหมายเลขอินพุทหากตัวเลขนั้นมีความยาวแตกต่างกันดังนั้นคอลัมน์ทั้งหมดจึงมีความกว้างและแถวเดียวกันอย่างเหมาะสม
- ตัวหารแต่ละตัวจะแสดงเป็นตัวเดียว
*
(หรืออักขระ ASCII ที่เหมาะสมอื่น ๆ ที่คุณเลือกตราบใดที่มีการใช้ตัวอักษรเดียวกันสำหรับเหตุการณ์ทั้งหมด) - ตัวหารหลายตัวจะถูกละเว้น (เช่น
3 x 3 = 9
แต่มีเพียงอันเดียว*
สำหรับจุดตัดนั้น) *
สามารถวางที่ใดก็ได้ในแนวนอนในคอลัมน์ตราบใดที่มันเป็นที่ชัดเจน (ผมมีตัวอย่างของฉันทั้งหมดที่มี*
จัดชิดขวา)
อินพุต
- รายการจำนวนเต็มบวกในรูปแบบที่สะดวกสบายแต่ละ
>1
รายการ - คุณสามารถสมมติว่าอินพุตถูกจัดเรียงล่วงหน้า
- อินพุตรับประกันว่ามีค่าเฉพาะเท่านั้น
เอาท์พุต
การแทนค่า ASCII art ที่เป็นผลลัพธ์ของตารางตัวหารหลัก
กฎระเบียบ
- ขึ้นบรรทัดใหม่หรือต่อท้ายช่องว่างหรือช่องว่างทั้งหมดเป็นตัวเลือกตราบใดที่ตัวละครตัวเองเข้าแถวอย่างถูกต้อง
- ถ้าสั้นกว่าที่จะมีเส้นแบ่งที่แยกส่วนหัวของคอลัมน์ / แถวออกจากข้อมูลแบบตารางก็อนุญาตเช่นกัน
- ยอมรับได้ทั้งโปรแกรมหรือฟังก์ชั่น หากฟังก์ชั่นคุณสามารถส่งคืนผลลัพธ์มากกว่าการพิมพ์
- หากเป็นไปได้โปรดใส่ลิงก์ไปยังสภาพแวดล้อมการทดสอบออนไลน์เพื่อให้ผู้คนสามารถลองใช้รหัสของคุณได้!
- ช่องโหว่มาตรฐานเป็นสิ่งต้องห้าม
- นี่คือรหัส - กอล์ฟเพื่อให้ใช้กฎการตีกอล์ฟตามปกติทั้งหมดและรหัสที่สั้นที่สุด (เป็นไบต์) ชนะ
ตัวอย่าง
6,9,14,22
6 9 14 22
2 * * *
3 * *
7 *
11 *
2,3,5,7
2 3 5 7
2 *
3 *
5 *
7 *
2,4,8,16,32
2 4 8 16 32
2 * * * * *
75,99,151,153
75 99 151 153
3 * * *
5 *
11 *
17 *
151 *