結果
問題 | No.721 Die tertia (ディエ・テルツィア) |
ユーザー |
|
提出日時 | 2018-08-03 22:35:37 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 2 ms / 2,000 ms |
コード長 | 1,041 bytes |
コンパイル時間 | 552 ms |
コンパイル使用メモリ | 73,856 KB |
実行使用メモリ | 6,948 KB |
最終ジャッジ日時 | 2024-09-19 17:30:37 |
合計ジャッジ時間 | 1,258 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 18 |
ソースコード
#include <iostream> #include<algorithm> #include <vector> #include<string> #include<cmath> #include<cstdio> using namespace std; typedef long long ll; typedef unsigned long long ull; #define max(x,y) (((x)>(y)) ? x:y) #define min(x,y) (((x)<(y)) ? x:y) #define FOR(a,b,c) for(b=(c);b<(a);b++) #define ender {return 0;} #define tosasuretu(a) (a*(a+1)/2) inline long kaizyo(long); int main() { int y, m, d; char a; cin >> y >> a >> m >> a >> d; d += 2; int maxd; switch (m) { case 2: maxd = 28; if (y % 4 == 0) { if (y % 100 != 0) { maxd = 29; } if (y % 400 == 0) { maxd = 29; } } break; case 4: case 6: case 9: case 11: maxd = 30; break; default: maxd = 31; break; } if (maxd < d) { m += 1; d -= maxd; if (m > 12) { m -= 12; y++; } } cout << y << "/"; if (m < 10) { cout << "0"; } cout << m << "/"; if (d < 10) { cout << "0"; } cout << d; return 0; } inline long kaizyo(long x) { long ans = 1; for (int z = 0; z < x; z++) { ans *= (x - z); } return ans; }