You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
39 lines
929 B
Python
39 lines
929 B
Python
def required_track_score(
|
|
*,
|
|
confirmed,
|
|
is_switch_candidate,
|
|
weak_reacq_guard,
|
|
acquire_floor=0.08,
|
|
reacquire_floor=0.07,
|
|
switch_floor=0.10,
|
|
):
|
|
if not confirmed:
|
|
return float(acquire_floor)
|
|
|
|
floor = float(reacquire_floor)
|
|
if weak_reacq_guard:
|
|
floor = max(floor, float(reacquire_floor))
|
|
if is_switch_candidate:
|
|
floor = max(floor, float(switch_floor))
|
|
return float(floor)
|
|
|
|
|
|
def track_passes_score_gate(
|
|
*,
|
|
track_score,
|
|
confirmed,
|
|
is_switch_candidate,
|
|
weak_reacq_guard,
|
|
acquire_floor=0.08,
|
|
reacquire_floor=0.07,
|
|
switch_floor=0.10,
|
|
):
|
|
return float(track_score) >= required_track_score(
|
|
confirmed=confirmed,
|
|
is_switch_candidate=is_switch_candidate,
|
|
weak_reacq_guard=weak_reacq_guard,
|
|
acquire_floor=acquire_floor,
|
|
reacquire_floor=reacquire_floor,
|
|
switch_floor=switch_floor,
|
|
)
|