第一行有个整数n表示测试用例的个数(1≤n≤100)。其后的n行,每行有三个小于10000的正整数y,m,d,表示一个日期的年月日,如果该日期是合乎历法的则输出yes,否则输出no;每个日期的输出单独占一行的Python函数
时间: 2024-03-29 09:34:13 浏览: 107
C++算法:第 N 位数字原理、源码、测试用例
好的,我理解了您的问题。以下是一个Python函数,用于判断给定日期是否合乎历法:
```python
def is_valid_date(y, m, d):
if y < 1 or y > 9999 or m < 1 or m > 12 or d < 1:
return "no"
elif m == 2:
if y % 4 == 0 and (y % 100 != 0 or y % 400 == 0):
if d <= 29:
return "yes"
else:
return "no"
else:
if d <= 28:
return "yes"
else:
return "no"
elif m in [4, 6, 9, 11]:
if d <= 30:
return "yes"
else:
return "no"
else:
if d <= 31:
return "yes"
else:
return "no"
```
您可以将此函数放在您的程序中,并调用它来判断给定日期是否合法。例:
```python
n = int(input())
for i in range(n):
y, m, d = map(int, input().split())
print(is_valid_date(y, m, d))
```
阅读全文