输入若干日期,按日期从小到大排序。 输入格式: 本题只有一组测试数据,且日期总数不超过100个。按“MM/DD/YYYY”的格式逐行输入若干日期。 输出格式: 按“MM/DD/YYYY”的格式输出已从小到大排序的各个日期,每个日期占一行。 输入样例: 12/31/2005 10/21/2003 02/12/2004 11/12/1999 10/22/2003 11/30/2005 输出样例: 11/12/1999 10/21/2003 10/22/2003 02/12/2004 11/30/2005 12/31/2005
时间: 2023-07-08 19:55:18 浏览: 72
以下是一个实现该功能的 Python 代码:
```python
# 定义一个日期类
class Date:
def __init__(self, month, day, year):
self.month = month
self.day = day
self.year = year
# 重载小于号运算符
def __lt__(self, other):
if self.year != other.year:
return self.year < other.year
if self.month != other.month:
return self.month < other.month
return self.day < other.day
# 读入日期并存储为一个列表
dates = []
while True:
try:
date_str = input().strip()
month, day, year = map(int, date_str.split('/'))
dates.append(Date(month, day, year))
except EOFError:
break
# 对日期列表进行排序
dates.sort()
# 输出排序后的日期
for date in dates:
print('{}/{}/{}'.format(date.month, date.day, date.year))
```
该代码首先定义了一个日期类`Date`,其中包含了月、日、年三个属性和一个小于号运算符重载方法,用于在日期列表排序时比较两个日期的大小。然后,代码读入若干个日期,并将它们存储为一个`Date`对象的列表。接着,代码对日期列表进行排序,最后按顺序输出排序后的日期。