日期计算

题目 日期计算

image-de0d2d0c

思路分析

把模板一敲 问题就解决了

代码实现

#include<bits/stdc++.h>

using namespace std;

int days[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};

bool is_leap(int y){

    return y%100 && y%4==0 || y%400==0;

}

int get_days(int y,int m){

    return days[m]+(m==2 && is_leap(y));

}

int main()

{

    int year,day;

    cin>>year>>day;

    int cnt=1;

    for(int m=1;m<12;m++){

        int curdays=get_days(year,m);

        if(day>curdays){

            day-=curdays;

            cnt++;

        }

        else

            break;

    }

    cout<<cnt<<endl<<day;

    return 0;

}

同类题型

视频讲解


⬅️ 日期差值 🏠 00-刷题理模型 ➡️ 日期问题