โจทย์ทั้งหมด
ปานกลาง 0 ข้อที่แก้แล้ว อัตราผ่าน 0%

ตัวประกอบเฉพาะที่มากที่สุด

หาตัวเลขเฉพาะที่มากที่สุดซึ่งหารจำนวนเต็มบวกหนึ่งจำนวนได้ลงตัว

จำนวนเฉพาะ (prime) คือจำนวนเต็มที่มากกว่า 1 และไม่มีตัวหารบวกอื่นใดนอกจาก 1 และตัวมันเอง จงหาตัวประกอบเฉพาะที่มากที่สุดของ n หาก n เป็นจำนวนเฉพาะ ให้คืนค่า n

ให้เขียนฟังก์ชัน largest_prime_factor(n)

อินพุต

n: จำนวนเต็มที่ต้องการแยกตัวประกอบ

เอาต์พุต

คืนค่าตัวประกอบเฉพาะที่มากที่สุดของ n

เงื่อนไข

2 ≤ n ≤ 10¹² อินพุต 1 จะไม่ถูกใช้เพราะไม่มีตัวประกอบเฉพาะ

ตัวอย่าง

ตัวอย่างที่ 1
อินพุต:
n = 84

ผลลัพธ์ที่คาดหวัง:
expected = 7
อินพุต:
long long n = 84;

ผลลัพธ์ที่คาดหวัง:
long long expected = 7;
อินพุต:
long n = 84;

ผลลัพธ์ที่คาดหวัง:
long expected = 7;

คำอธิบาย

84 = 2 × 2 × 3 × 7 ดังนั้นตัวประกอบเฉพาะที่มากที่สุดคือ 7

ตัวอย่างที่ 2
อินพุต:
n = 13

ผลลัพธ์ที่คาดหวัง:
expected = 13
อินพุต:
long long n = 13;

ผลลัพธ์ที่คาดหวัง:
long long expected = 13;
อินพุต:
long n = 13;

ผลลัพธ์ที่คาดหวัง:
long expected = 13;

คำอธิบาย

13 เป็นจำนวนเฉพาะ ดังนั้นตัวประกอบเฉพาะที่มากที่สุดก็คือ 13

แหล่งอ้างอิง

โจทย์นี้ปรับให้เหมาะกับ CodeUtility กรุณาทำตามคำชี้แจงและข้อจำกัดด้านบน

เรียนรู้จากคนอื่น

แนวทางจากชุมชน

ยังไม่มีวิธีทำที่เผยแพร่ ลองแก้โจทย์นี้เพื่อแชร์วิธีแรก