bin/n50 @ a65fd2691c94 default tip

More
author Steve Losh <steve@stevelosh.com>
date Mon, 03 Nov 2025 14:55:17 -0500
parents 890e2d48b6f7
children (none)
#!/usr/bin/env python3

import sys

def n50(lengths):
    if not lengths:
        return 0

    ls = sorted(lengths, reverse=True)
    total = sum(ls)
    target = total / 2

    x = 0
    for l in ls:
        x += l
        if x >= target:
            return l

lengths = [int(line) for line in sys.stdin.readlines() if line]
print(n50(lengths))