1 条题解
-
0
参考答案:
#include<iostream> using namespace std; int main() { int y, m, d; scanf("%d-%d-%d", &y, &m, &d); if (d > 2) printf("%d-%02d-%02d\n", y, m, d - 2); else { if (m == 3) { if (y % 4 == 0 && y % 100 != 0 || y % 400 == 0) { if (d == 1) printf("%d-%02d-28\n", y, m - 1); else printf("%d-%02d-29\n", y, m - 1); } else { if (d == 1) printf("%d-%02d-27\n", y, m - 1); else printf("%d-%02d-28\n", y, m - 1); } } else if (m == 1) { if (d == 1) printf("%d-12-30\n", y - 1); else printf("%d-12-31\n", y - 1); } else if (m == 7) { if (d == 1) printf("%d-%02d-29\n", y, m - 1); else printf("%d-%02d-30\n", y, m - 1); } else if (m == 8) { if (d == 1) printf("%d-%02d-30\n", y, m - 1); else printf("%d-%02d-31\n", y, m - 1); } else if (m == 5 || m == 10 || m == 12) { if (d == 1) printf("%d-%02d-29\n", y, m - 1); else printf("%d-%02d-30\n", y, m - 1); } else { if (d == 1) printf("%d-%02d-30\n", y, m - 1); else printf("%d-%02d-31\n", y, m - 1); } } return 0; }
- 1
信息
- ID
- 45
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 10
- 标签
- 递交数
- 14
- 已通过
- 1
- 上传者