This commit is contained in:
blueloveTH 2023-05-21 15:38:07 +08:00
parent c20d16d4f6
commit f6865aa595
2 changed files with 8 additions and 15 deletions

View File

@ -1,9 +1,9 @@
def cache(f):
def wrapper(*args):
if not hasattr(f, 'cache'):
f.cache = {}
if not hasattr(f, '__cache__'):
f.__cache__ = {}
key = args
if key not in f.cache:
f.cache[key] = f(*args)
return f.cache[key]
if key not in f.__cache__:
f.__cache__[key] = f(*args)
return f.__cache__[key]
return wrapper

View File

@ -1,14 +1,7 @@
from functools import cache
def cache(f):
def wrapper(*args):
if not hasattr(f, 'cache'):
f.cache = {}
key = args
if key not in f.cache:
f.cache[key] = f(*args)
return f.cache[key]
return wrapper
@cache
@cache
@cache
def fib(n):
if n < 2: