# ====================== 配置区 ======================
total = 97.1
price = 65
# ====================================================
import random
max_single = 1000 / price
count = int(total / max_single) + 1
nums = []
used = set()
base = total / count
# 先生成一组数字
while len(nums) < count:
val = round(base + random.uniform(-0.1, 0.1), 2)
if 0 < val <= max_single and val not in used:
used.add(val)
nums.append(val)
# 【暴力精准校准:直接强制等于 153.8】
current_sum = sum(nums)
nums[-1] = round(total - sum(nums[:-1]), 2)
# 输出
for num in nums:
print(f"{num:.2f}")
print(f"\n总和校验:{sum(nums):.2f}")
IyA9PT09PT09PT09PT09PT09PT09PT09IOmFjee9ruWMuiA9PT09PT09PT09PT09PT09PT09PT09CnRvdGFsID0gOTcuMQpwcmljZSA9IDY1CiMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQoKaW1wb3J0IHJhbmRvbQoKbWF4X3NpbmdsZSA9IDEwMDAgLyBwcmljZQpjb3VudCA9IGludCh0b3RhbCAvIG1heF9zaW5nbGUpICsgMQpudW1zID0gW10KdXNlZCA9IHNldCgpCmJhc2UgPSB0b3RhbCAvIGNvdW50CgojIOWFiOeUn+aIkOS4gOe7hOaVsOWtlwp3aGlsZSBsZW4obnVtcykgPCBjb3VudDoKICAgIHZhbCA9IHJvdW5kKGJhc2UgKyByYW5kb20udW5pZm9ybSgtMC4xLCAwLjEpLCAyKQogICAgaWYgMCA8IHZhbCA8PSBtYXhfc2luZ2xlIGFuZCB2YWwgbm90IGluIHVzZWQ6CiAgICAgICAgdXNlZC5hZGQodmFsKQogICAgICAgIG51bXMuYXBwZW5kKHZhbCkKCiMg44CQ5pq05Yqb57K+5YeG5qCh5YeG77ya55u05o6l5by65Yi2562J5LqOIDE1My4444CRCmN1cnJlbnRfc3VtID0gc3VtKG51bXMpCm51bXNbLTFdID0gcm91bmQodG90YWwgLSBzdW0obnVtc1s6LTFdKSwgMikKCiMg6L6T5Ye6CmZvciBudW0gaW4gbnVtczoKICAgIHByaW50KGYie251bTouMmZ9IikKcHJpbnQoZiJcbuaAu+WSjOagoemqjO+8mntzdW0obnVtcyk6LjJmfSIp