Run ID | 作者 | 问题 | 语言 | 测评结果 | Time | Memory | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|
93170 | 胡海峰老师 | 18岁生日 | Python3 | Wrong Answer | 63 MS | 5528 KB | 856 | 2024-10-12 11:41:45 |
from datetime import datetime, timedelta def calculate_days(birthdate_str): birthdate = datetime.strptime(birthdate_str, "%Y-%m-%d") eighteenth_birthday = birthdate.replace(year=birthdate.year + 18) # 如果18岁生日在出生月份之前,调整到下一年的同一天 if eighteenth_birthday.month < birthdate.month or (eighteenth_birthday.month == birthdate.month and eighteenth_birthday.day < birthdate.day): eighteenth_birthday = eighteenth_birthday.replace(year=eighteenth_birthday.year + 1) delta = eighteenth_birthday - birthdate return delta.days if delta.days > 0 else -1 def main(): T = int(input().strip()) for _ in range(T): birthdate_str = input().strip() days = calculate_days(birthdate_str) print(days) if __name__ == "__main__": main()
------Input------
11 1989-11-26 1962-12-02 1963-03-27 1990-03-31 1900-02-28 2000-02-29 2008-08-08 1995-02-28 2012-02-29 2020-02-28 1982-03-01
------Answer-----
6574 6575 6575 6575 6574 -1 6574 6575 -1 6575 6575
------Your output-----
6574 6575 6575 6575 6574