比較日期
D105 – 執行時間限制: 1.000 s – 記憶體限制: 256 MB
寫出一個程式去比較以下兩日期: y1−m1−d1 和 y2−m2−d2。
輸入與輸出
輸入包括兩行。第一行為 y1、m1 和 d1 並以空格分隔開。第二行為 y1、m1 和 d1 並以空格分隔開。
1000≤y1、y2≤9999 和日期保證為有效。
如果 y1−m1−d1 較為早,輸出 Before
。
如果 y2−m2−d2 較為早,輸出 After
。
如果兩個日期相同,輸出 Same
。
樣例
輸入 | Output | |
---|---|---|
1 | 2015 3 1 2015 7 5 |
Before |
2 | 2014 6 20 2012 11 2 |
After |
3 | 2046 5 13 2046 5 13 |
Same |
題解
注意: 有其他算法和實現方法能正確地解決此題目。
C++
#include <iostream>
using namespace std;
int main() {
int y1, m1, d1, y2, m2, d2;
cin >> y1 >> m1 >> d1;
cin >> y2 >> m2 >> d2;
int a = 10000 * y1 + 100 * m1 + d1;
int b = 10000 * y2 + 100 * m2 + d2;
if (a < b) {
cout << "Before" << endl;
} else if (a == b) {
cout << "Same" << endl;
} else {
cout << "After" << endl;
}
return 0;
}
Python
y1, m1, d1 = map(int, input().split())
y2, m2, d2 = map(int, input().split())
a = 10000 * y1 + 100 * m1 + d1
b = 10000 * y2 + 100 * m2 + d2
if a < b:
print('Before')
elif a == b:
print('Same')
else:
print('After')
隱藏測試數據
輸入 | 輸出 | |
---|---|---|
4 | 2015 11 30 2015 12 1 |
Before |
5 | 2000 9 2 2000 9 2 |
Same |
6 | 2000 9 2 2000 9 3 |
Before |
7 | 2000 9 3 2000 9 2 |
After |
8 | 2000 10 1 2000 9 5 |
After |
9 | 2000 8 21 2000 9 3 |
Before |
10 | 2004 2 29 2046 3 01 |
Before |
11 | 2006 1 1 2005 12 31 |
After |
12 | 1000 1 1 9999 12 31 |
Before |
13 | 9876 12 31 9877 1 1 |
Before |