孕早期留言追加在末尾,原 100 条下标不变(真实回复不挂错楼)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
deploy
2026-11-07 03:33:17 +00:00
parent 5f6f7abda3
commit 52ff1ab718
6 changed files with 11 additions and 9 deletions

View File

@@ -45,7 +45,7 @@ for k, l in enumerate(early):
for t in parts[1:]:
rr.append([reps[ri], t]); ri += 1
eo.append([early_p[ei], parts[0], 0, rr]); ei += 1
# 插进去:从第 3 条起每隔约 2~3 条放一条早孕的,赞数取前后两条之间
# 定赞数:从第 3 条起每隔约 2~3 条放一条早孕的,赞数取前后两条之间
merged = []
step = len(out) / len(eo)
j = 0
@@ -54,8 +54,10 @@ for k, c in enumerate(out):
while j < len(eo) and k >= 2 + j * step * .96:
e = eo[j]; nxt = out[k + 1][2] if k + 1 < len(out) else 3
e[2] = max(3, (c[2] + nxt) // 2 + rnd.randint(-4, 4)); merged.append(e); j += 1
merged += eo[j:]
out = merged
for e in eo[j:]: e[2] = 3
# 追加在最后(模拟留言的 key 是「帖子#下标」,插在中间会让原来那 100 条下标错位,真实回复/本机点赞挂错楼);
# 赞数已按插入位置取好,「最热」排序时自然穿插在中间
out = out + eo
d['c'][TARGET] = out
json.dump(d, open(P, 'w', encoding='utf-8'), ensure_ascii=False, separators=(',', ':'))
print('ok', len(out), 'replies', ri, 'early', len(eo), 'early-replies', ei - len(eo))