From d6a43776288c95151bfc0588b2e0a192f58c95a4 Mon Sep 17 00:00:00 2001 From: MaximSmolskiy Date: Tue, 26 Jul 2022 22:51:13 +0300 Subject: [PATCH 1/6] Add solution --- project_euler/problem_073/__init__.py | 0 project_euler/problem_073/sol1.py | 40 +++++++++++++++++++++++++++ 2 files changed, 40 insertions(+) create mode 100644 project_euler/problem_073/__init__.py create mode 100644 project_euler/problem_073/sol1.py diff --git a/project_euler/problem_073/__init__.py b/project_euler/problem_073/__init__.py new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/project_euler/problem_073/sol1.py b/project_euler/problem_073/sol1.py new file mode 100644 index 000000000000..3ee6f4957953 --- /dev/null +++ b/project_euler/problem_073/sol1.py @@ -0,0 +1,40 @@ +""" +Project Euler Problem 73: https://projecteuler.net/problem=73 + +Consider the fraction, n/d, where n and d are positive integers. +If n int: + """ + Returns number of fractions lie between 1/3 and 1/2 in the sorted set + of reduced proper fractions for d ≤ max_d + + >>> solution(8) + 3 + """ + + fractions_number = 0 + for d in range(max_d + 1): + for n in range(d // 3 + 1, (d + 1) // 2): + if gcd(n, d) == 1: + fractions_number += 1 + return fractions_number + + +if __name__ == "__main__": + print(f"{solution() = }") From 75b15ee6b0870e647f836e64e4e28af3df342331 Mon Sep 17 00:00:00 2001 From: github-actions <${GITHUB_ACTOR}@users.noreply.github.com> Date: Tue, 26 Jul 2022 19:52:10 +0000 Subject: [PATCH 2/6] updating DIRECTORY.md --- DIRECTORY.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/DIRECTORY.md b/DIRECTORY.md index 843ff77bb67b..87223244973b 100644 --- a/DIRECTORY.md +++ b/DIRECTORY.md @@ -809,6 +809,8 @@ * Problem 072 * [Sol1](project_euler/problem_072/sol1.py) * [Sol2](project_euler/problem_072/sol2.py) + * Problem 073 + * [Sol1](project_euler/problem_073/sol1.py) * Problem 074 * [Sol1](project_euler/problem_074/sol1.py) * [Sol2](project_euler/problem_074/sol2.py) From efe41c13a0234c5e61dad13549d6b497f7f0c783 Mon Sep 17 00:00:00 2001 From: Maxim Smolskiy Date: Mon, 24 Oct 2022 13:51:34 +0300 Subject: [PATCH 3/6] Add tests --- project_euler/problem_073/sol1.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/project_euler/problem_073/sol1.py b/project_euler/problem_073/sol1.py index 3ee6f4957953..55441af11f12 100644 --- a/project_euler/problem_073/sol1.py +++ b/project_euler/problem_073/sol1.py @@ -23,7 +23,13 @@ def solution(max_d: int = 12_000) -> int: """ Returns number of fractions lie between 1/3 and 1/2 in the sorted set of reduced proper fractions for d ≤ max_d - + + >>> solution(0) + 0 + + >>> solution(1) + 0 + >>> solution(8) 3 """ From f2506d435c549aef4a1bdd8675818dd110016c62 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 24 Oct 2022 10:52:23 +0000 Subject: [PATCH 4/6] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- project_euler/problem_073/sol1.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/project_euler/problem_073/sol1.py b/project_euler/problem_073/sol1.py index 55441af11f12..06132fca0c69 100644 --- a/project_euler/problem_073/sol1.py +++ b/project_euler/problem_073/sol1.py @@ -23,13 +23,13 @@ def solution(max_d: int = 12_000) -> int: """ Returns number of fractions lie between 1/3 and 1/2 in the sorted set of reduced proper fractions for d ≤ max_d - + >>> solution(0) 0 - + >>> solution(1) 0 - + >>> solution(8) 3 """ From 11268e343036dbf4aea229034b6ba8268f4ca71a Mon Sep 17 00:00:00 2001 From: Maxim Smolskiy Date: Mon, 24 Oct 2022 13:59:34 +0300 Subject: [PATCH 5/6] Change tests --- project_euler/problem_073/sol1.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/project_euler/problem_073/sol1.py b/project_euler/problem_073/sol1.py index 06132fca0c69..2b66b7d8769b 100644 --- a/project_euler/problem_073/sol1.py +++ b/project_euler/problem_073/sol1.py @@ -24,11 +24,11 @@ def solution(max_d: int = 12_000) -> int: Returns number of fractions lie between 1/3 and 1/2 in the sorted set of reduced proper fractions for d ≤ max_d - >>> solution(0) + >>> solution(4) 0 - >>> solution(1) - 0 + >>> solution(5) + 1 >>> solution(8) 3 From 6eeef801e8d4d733235fb920fa9c159951c5416d Mon Sep 17 00:00:00 2001 From: MaximSmolskiy Date: Mon, 24 Oct 2022 14:12:00 +0300 Subject: [PATCH 6/6] Retest