2 条题解
-
1
#include <string> using namespace std; int daysInMonth[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; string weekNames[] = {"Saturday", "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday"}; bool isLeapYear(int year) { return (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0); } int main() { int n; cin >> n; int dayOfWeek = n % 7; int year = 2000; int month = 1; int day = 1 + n; while (day > (isLeapYear(year) ? 366 : 365)) { day -= isLeapYear(year) ? 366 : 365; year++; } if (isLeapYear(year)) daysInMonth[1] = 29; else daysInMonth[1] = 28; while (day > daysInMonth[month - 1]) { day -= daysInMonth[month - 1]; month++; } cout << year << "-" << month << "-" << day << " " << weekNames[dayOfWeek] << endl; return 0; }
信息
- ID
- 1126
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 6
- 标签
- 递交数
- 92
- 已通过
- 25
- 上传者