bcrypt.ctf/bcrypt/lib/math.py

17 lines
417 B
Python
Raw Normal View History

2025-06-21 19:05:47 +10:00
'''
Implements numeric range clamping (idk why its not in the stdlib...)
NOTE: the upper and lower bounds for clamping are inclusive
'''
def clamp(x: int, min: int, max: int) -> int:
if x < min:
return min
elif x > max:
return max
return x
def clamp_min(x: int, min: int) -> int:
return x if x > min else min
def clamp_max(x: int, max: int) -> int:
return x if x < max else max