Highest Common Factor(HCF)
Learn how to solve the 'Highest Common Factor(HCF)' problem. This detailed resource details brute force and optimized approaches.
Problem Statement
Write a function find_hcf(a, b) that takes two positive integers a and b and returns their Highest Common Factor (HCF). The HCF is the largest positive integer that divides both numbers without leaving a remainder.
For example, the HCF of 12 and 18 is 6, because 6 is the largest number that divides both 12 and 18 evenly.
- •1 <= a, b <= 10^6
Examples
find_hcf(12, 18)
6
Factors of 12: 1, 2, 3, 4, 6, 12. Factors of 18: 1, 2, 3, 6, 9, 18. Common factors: 1, 2, 3, 6. Highest is 6.
find_hcf(24, 36)
12
Factors of 24: 1, 2, 3, 4, 6, 8, 12, 24. Factors of 36: 1, 2, 3, 4, 6, 9, 12, 18, 36. Highest common factor is 12.
find_hcf(7, 13)
1
7 and 13 are both prime numbers with no common factors other than 1.
Need a Hint?
Edge Cases to Watch
- Empty list or null input variables
- Single item lists/arrays
- Extremely large input bounds causing integer or stack overflow
Ready to Solve?
Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.