题解 | 日期差值

#include <iostream>
using namespace std;
int mon[2000]={0,31,28,31,30,31,30,31,31,30,31,30,31,0};
bool run(int year){
    return year % 4 == 0 && year%100 != 0 || year % 400 == 0;
}

int main() {
    int a, b;
    while (cin >> a >> b) { // 注意 while 处理多个 case
        int res = 1,d=a%100,m=a/100%100,y=a/10000;
        int d1=b%100,m1=b/100%100,y1=b/10000;
        // cout<<y<<" "<<m<<" "<<d;
        while(d!=d1 || m!=m1 || y!=y1){
            if(!run(y))mon[y] = 28;
			else mon[2] = 29;
            res++;
            d++;
            if(d>mon[m]){
                m++;
                if(m==13){
                    y++;
                    m = 1;
                    if(!run(y))mon[y] = 28;
					else mon[2] = 29;
                }
                d=1;
            }
        //    cout<<y<<" "<<m<<" "<<d<<"--"<<res<<endl;
        } cout<<res<<endl;

        
        
    }
}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

07-10 13:59
门头沟学院 Java
点赞 评论 收藏
分享
牛客73617529...:无端端被你骂一句
点赞 评论 收藏
分享
zzzzhz:兄弟你先猛猛投简历至少三百家,能约到面试就去面。最近可以速成智能小车,智慧家居烂大街的项目,不需要自己写,只需要把里面的代码讲解看明白就行。把其中涉及到的八股文都拿出来单独背一下,我去年找工作就一个智能小车智慧家居找了10k差不多。
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-08 12:05
俺不中了,BOSS遇到了一个hr,我觉得我咨询的问题都很正常吧,然后直接就被拒绝了???
恶龙战士:你问的太多了,要不就整理成一段话直接问他,一个一个问不太好
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务