197 int t, year, month, day, a;
198 int day_of_month[13] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
199 int day_of_month_leap[13] = {0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
200 int(*day_of_month_p)[13] =
nullptr;
204 cin >> year >> month >> day >> a;
205 day_of_month_p = ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) ? &day_of_month_leap : &day_of_month;
207 while(day > (*day_of_month_p)[month]) {
208 day -= (*day_of_month_p)[month];
213 day_of_month_p = ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) ? &day_of_month_leap : &day_of_month;
216 cout << setw(4) << setfill(
'0') << year <<
'-' << setw(2) << setfill(
'0') << month <<
'-' << setw(2) << setfill(
'0') << day << endl;