aboutsummaryrefslogtreecommitdiff
path: root/julia
diff options
context:
space:
mode:
authorCharles Cabergs <me@cacharle.xyz>2021-06-23 14:48:30 +0200
committerCharles Cabergs <me@cacharle.xyz>2021-06-23 14:48:30 +0200
commit85b66f8e64576ec3a17066bb1b920a5cd02a30c2 (patch)
treeb550e5c605a489dc257f1e99c0d4f3de73890cb9 /julia
parentb1ee844382c090723010dd8ddf9c0bf8090c9ece (diff)
downloadproject_euler-85b66f8e64576ec3a17066bb1b920a5cd02a30c2.tar.gz
project_euler-85b66f8e64576ec3a17066bb1b920a5cd02a30c2.tar.bz2
project_euler-85b66f8e64576ec3a17066bb1b920a5cd02a30c2.zip
problem 73 in julia
Diffstat (limited to 'julia')
-rw-r--r--julia/073-counting_fractions_in_a_range.jl33
1 files changed, 33 insertions, 0 deletions
diff --git a/julia/073-counting_fractions_in_a_range.jl b/julia/073-counting_fractions_in_a_range.jl
new file mode 100644
index 0000000..5ec6c21
--- /dev/null
+++ b/julia/073-counting_fractions_in_a_range.jl
@@ -0,0 +1,33 @@
+###
+# Counting fractions in a range
+# Problem 73
+#
+# Consider the fraction, n/d, where n and d are positive integers. If n<d and HCF(n,d)=1,
+# it is called a reduced proper fraction.
+# If we list the set of reduced proper fractions for d ≤ 8 in ascending order of size, we
+# get:
+# 1/8, 1/7, 1/6, 1/5, 1/4, 2/7, 1/3, 3/8, 2/5, 3/7, 1/2, 4/7, 3/5, 5/8, 2/3, 5/7, 3/4, 4/5,
+# 5/6, 6/7, 7/8
+# It can be seen that there are 3 fractions between 1/3 and 1/2.
+# How many fractions lie between 1/3 and 1/2 in the sorted set of reduced proper fractions
+# for d ≤ 12,000?
+###
+
+
+# HCF means Higest Common Factor (aka Greatest Common Divisor)
+# HCF(n, d) is to ensure that the fraction is reduced.
+# Eddie Woo GCD: https://www.youtube.com/watch?v=ui5yjN1riQA
+
+const TOP = 12_000
+
+# ~15s
+result = length(
+ Set([
+ n // d
+ for d in 1:TOP
+ for n in 1:d
+ if 1 // 3 < n // d < 1 // 2
+ ])
+)
+
+println(result)