Project Euler Problem 72 Solution

Question

Consider the fraction, nd\frac{n}{d}, where nn and dd are positive integers. If n<dn \lt d and HCF(n,d)=1\mathrm{HCF}(n,d)=1, it is called a reduced proper fraction.

If we list the set of reduced proper fractions for d8d \leq 8 in ascending order of size, we get:

18,17,16,15,14,27,13,38,25,37,12,47,35,58,23,57,34,45,56,67,78\frac{1}{8}, \frac{1}{7}, \frac{1}{6}, \frac{1}{5}, \frac{1}{4}, \frac{2}{7}, \frac{1}{3}, \frac{3}{8}, \frac{2}{5}, \frac{3}{7}, \frac{1}{2}, \frac{4}{7}, \frac{3}{5}, \frac{5}{8}, \frac{2}{3}, \frac{5}{7}, \frac{3}{4}, \frac{4}{5}, \frac{5}{6}, \frac{6}{7}, \frac{7}{8}

It can be seen that there are 21 elements in this set.

How many elements would be contained in the set of reduced proper fractions for d1,000,000d \leq 1,000,000?

Haskell

Python