← 返回题库
初级

人口普查

未完成
初级参考 完整示例代码供参考,建议自己理解后重新输入
def solve(n, data):
    n = int(n)
    lines = str(data).strip().split(',')
    valid = []
    for line in lines:
        parts = line.split()
        name = parts[0]
        by, bm, bd = map(int, parts[1].split('/'))
        birth = (by, bm, bd)
        if (1814, 9, 6) <= birth <= (2014, 9, 6):
            valid.append((birth, name))
    if not valid:
        print(0)
    else:
        print(len(valid))
        oldest = min(valid)[1]
        youngest = max(valid)[1]
        print(f'{oldest} {youngest}')

示例

输入
solve(5, 'John 2001/1/1,Mary 1814/9/5,Bob 2014/9/7,Alice 1900/1/1,Tom 2000/12/31')
期望输出
3
Alice John
Python 代码 🔒 登录后使用
🔒

登录后即可练习

注册免费账号,在浏览器中直接运行 Python 代码