2520 เป็นเลขที่เล็กที่สุดที่สามารถหารทุกๆตัวเลขจาก 1 ถึง 10 ได้ลงตัว
จงหาเลขที่สามารถหารทุกตัวเลขตั้งแต่ 1 ถึง 20 ได้ลงตัว
(โจทย์นี้แปลมาจาก projecteuler.net สามารถเผยแพร่ภายใต้ลิขสิทธิ์ CC BY-NC-SA 2.0 UK)
2520 เป็นเลขที่เล็กที่สุดที่สามารถหารทุกๆตัวเลขจาก 1 ถึง 10 ได้ลงตัว
จงหาเลขที่สามารถหารทุกตัวเลขตั้งแต่ 1 ถึง 20 ได้ลงตัว
(โจทย์นี้แปลมาจาก projecteuler.net สามารถเผยแพร่ภายใต้ลิขสิทธิ์ CC BY-NC-SA 2.0 UK)
Updated
คะแนน
เรน @Rain:
ชัดเจน: 3/3 สร้างสรรค์: 1/3 กระชับ 2/3 ความเร็ว 2/3
Comment: โอเคครับ ชัดเจนดี ตรงไปตรงมา ชอบตรงที่มีการเขียนฟังค์ชั่นด้วย ทำให้ while loop อ่านง่ายขึ้นอย่างมหาศาล ส่วนความเร็ว และตรงที่บวก 2520 ครับ ทำให้เร็วขึ้นเยอะ
@Home
ชัดเจน: 2/3 สร้างสรรค์: 2/3 กระชับ 1/3 ความเร็ว 3/3
Comment: บล๊อกนี้ควรอยู๋ใน function ของมันเองครับเพราะใช้ซ้ำ:
while ((using1 % 19 == 0) && (using2 % 19 == 0))
{
using1 = using1/19;
using2 = using2/19;
value[insert] = 19;
insert++;
}
@STGSafe
ชัดเจน: 2/3 สร้างสรรค์: 2/3 กระชับ 2/3 ความเร็ว 1/3
Comment: ถ้าใช้ 2520 ไม่ต้องเช็คก็ได้ครับว่า 1-10 หารลงตัวไหม เพราะเรารู้อยู่แล้วว่าลงตัว ทำให้ช้าลงไปหน่อยครับ ไม่ต้องเริ่มที่เลข 1 ด้วยครับ และไม่ต้องใช้เลขคู่
@teerathornmoon3
ชัดเจน: 2/3 สร้างสรรค์: 2/3 กระชับ 2/3 ความเร็ว 1/3
Comment: ถ้าใช้ 2520 ไม่ต้องเช็คก็ได้ครับว่า 1-10 หารลงตัวไหม เพราะเรารู้อยู่แล้วว่าลงตัว ทำให้ช้าลงไปหน่อยครับ ไม่ต้องเริ่มที่เลข 1 ด้วยครับ และไม่ต้องใช้เลขคู่
@prin09
ชัดเจน: 2/3 สร้างสรรค์: 1/3 กระชับ 2/3 ความเร็ว 2/3
Comment: โดยรวมโค้ดเร็วครับ แต่เร็วกว่านี้ได้ ลองอ่านคอมเมนท์ที่ผมทิ้งไว้ให้ @teerathornmoon3 ครับ
@rayaaaa
ชัดเจน: 1/3 สร้างสรรค์: 3/3 กระชับ 1/3 ความเร็ว 1/3
Comment: อ่านยาก แต่ก็โอเคครับ ลองดู comment ที่ผมเขียนให้คนอื่นถึงวิธีการเพิ่มความเร็วครับ และผมว่าน่าจะทำให้กระชับกว่านี้ได้อีกเยอะเลย แต่เป็นวิธีที่น่าสนใจครับ ให้คะแนนความสร้างสรรค์
@Akira
ชัดเจน: 1/3 สร้างสรรค์: 3/3 กระชับ 1/3 ความเร็ว 1/3
Comment: อ่านแล้วงงเหมือนกันครับ แต่วิธีน่าสนใจครับ
Home’s Answer:
ของธีครับ
Java ขอบเซฟครับ