mirror of
https://github.com/TheAlgorithms/Python.git
synced 2024-11-30 16:31:08 +00:00
Style Improvements for project_euler/problem_26 (#2958)
* add typehints and docstrings * add typehint and default value * add typehint and default value. Removed unused variable. * do not modifiy the given solution * add doctests * update sol1 after running black * add typehint, docstring, and doctest * update sol2 after running black * add full problem statement and solution function with typehint and doctest * renamed original function instead of adding new one * don't alter original solution
This commit is contained in:
parent
6a5a022082
commit
ef53bbdf5a
|
@ -1,20 +1,38 @@
|
|||
"""
|
||||
Euler Problem 26
|
||||
https://projecteuler.net/problem=26
|
||||
|
||||
Problem Statement:
|
||||
|
||||
A unit fraction contains 1 in the numerator. The decimal representation of the
|
||||
unit fractions with denominators 2 to 10 are given:
|
||||
|
||||
1/2 = 0.5
|
||||
1/3 = 0.(3)
|
||||
1/4 = 0.25
|
||||
1/5 = 0.2
|
||||
1/6 = 0.1(6)
|
||||
1/7 = 0.(142857)
|
||||
1/8 = 0.125
|
||||
1/9 = 0.(1)
|
||||
1/10 = 0.1
|
||||
Where 0.1(6) means 0.166666..., and has a 1-digit recurring cycle. It can be
|
||||
seen that 1/7 has a 6-digit recurring cycle.
|
||||
|
||||
Find the value of d < 1000 for which 1/d contains the longest recurring cycle
|
||||
in its decimal fraction part.
|
||||
"""
|
||||
|
||||
|
||||
def find_digit(numerator: int, digit: int) -> int:
|
||||
def solution(numerator: int = 1, digit: int = 1000) -> int:
|
||||
"""
|
||||
Considering any range can be provided,
|
||||
because as per the problem, the digit d < 1000
|
||||
>>> find_digit(1, 10)
|
||||
>>> solution(1, 10)
|
||||
7
|
||||
>>> find_digit(10, 100)
|
||||
>>> solution(10, 100)
|
||||
97
|
||||
>>> find_digit(10, 1000)
|
||||
>>> solution(10, 1000)
|
||||
983
|
||||
"""
|
||||
the_digit = 1
|
||||
|
|
Loading…
Reference in New Issue
Block a user