#include <iostream>
using namespace std;

int main() {
    int year, month, day;
    int i = 0;
    int sum = 0;
    while ( cin >> year >> month >> day) {
        //1.要有一年的中的每一个月的天数,方便计算
        int MonthDay[13] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
        //2.把这一年的已过的月份的天数先加上,再加上,这个月的天数,比如2023 11 8,
        //先把前面10个月的加起来,再加上11月已过的天数。
        for (i = 1; i < month; i++) {
            sum += MonthDay[i];
        }
        sum += day;
        //3.已过的月份是否>2,判断是否是闰年,如果是加一天
        if (month > 2 && (year % 4 == 0 && year % 100 != 0 && year || 400 == 0)) {
            cout << sum + 1 << endl;
        }
        else {
            cout << sum;
        }
    }

}

思路:

第1步:用一个数组,存放着12个月的天数,数组要13个空间,下标为0的位置用零空出来,因为没有0月,

第2步:先把前面个月的加起来,再加上这个月已过的天数。

第3步:判断月数是不是超过二月,如果超过就要判断年份是不是属于润年。如果是就要天数+1