[pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci
This commit is contained in:
pre-commit-ci[bot] 2024-10-10 16:45:31 +00:00
parent cd42352303
commit 5e70415ced

View File

@ -1,31 +1,32 @@
import hashlib
import time
def proof_of_work(difficulty: int) -> int:
"""
Simulates a Proof of Work mining process.
The miner must find a nonce such that the hash of the nonce starts
with a specific number of leading zeros (difficulty)
Args:
difficulty (int): The number of leading zeros required in the hash.
Returns:
int: The nonce value that solves the puzzle.
Example:
>>> result = proof_of_work(2) # Difficulty of 2 should be fast
>>> isinstance(result, int)
True
"""
prefix = '0' * difficulty
nonce = 0
start = time.time() # Timing starts
while True:
hash_result = hashlib.sha256(f"{nonce}".encode()).hexdigest()
if hash_result.startswith(prefix):
end = time.time() # Timing ends
print(f"Time taken: {end - start:.2f}s") # Print time taken
return nonce
nonce += 1
def proof_of_work(difficulty: int) -> int:
"""
Simulates a Proof of Work mining process.
The miner must find a nonce such that the hash of the nonce starts
with a specific number of leading zeros (difficulty)
Args:
difficulty (int): The number of leading zeros required in the hash.
Returns:
int: The nonce value that solves the puzzle.
Example:
>>> result = proof_of_work(2) # Difficulty of 2 should be fast
>>> isinstance(result, int)
True
"""
prefix = "0" * difficulty
nonce = 0
start = time.time() # Timing starts
while True:
hash_result = hashlib.sha256(f"{nonce}".encode()).hexdigest()
if hash_result.startswith(prefix):
end = time.time() # Timing ends
print(f"Time taken: {end - start:.2f}s") # Print time taken
return nonce
nonce += 1