C++ 三天打鱼两天晒网。C++

cpp 复制代码
#include<stdio.h>


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

int isLeap(int year) {
    return year % 4 == 0 && year % 100 != 0 || year % 400 == 0;
}

int getDaysByM(int year,int month) {
    int days = Month[month];
    if (isLeap(year) && month == 2)
        days += 1;
    return days;
}
 

int main()
{
    int year, month, day;
    while (scanf("%d-%d-%d", &year, &month, &day) != EOF) {
        int days = 0;
        int y = 2000, m = 1, d = 1;
        while (1) {
            if (y == year && month == m && day == d)
                break;

            if (y < year) {
                y += 1;
                if (isLeap(y)) {
                    days += 366;                      
                }
                else {
                    days += 365;                       
                }
            }
            else {
                d += 1;
                days += 1;
                if (d > getDaysByM(y, m)) {
                    m += 1;
                    d = 1;
                    if (m > 12) {
                        m = 1;
                        y += 1;
                    }                              
                }
            }
            
        }
        int res = days % 5;
        if (res < 3) {
            puts("打鱼");
        }
        else {
            puts("晒网");
        }

    }
}
相关推荐
武子康17 分钟前
Java-07 深入浅出 MyBatis数据库一对多关系模型实战:表结构设计与查询实现
java·后端
REDcker2 小时前
Linux OverlayFS详解
java·linux·运维
玖釉-2 小时前
下一个排列:从字典序到原地算法的完整推导
数据结构·c++·windows·算法
IronMurphy2 小时前
【算法五十】62. 不同路径
算法
Royzst2 小时前
xml知识点
java·服务器·前端
影寂ldy3 小时前
C#一维数组
算法
枕星而眠3 小时前
数据结构八大排序详解(一):四大简单排序
c语言·数据结构·c++·后端
鱼鳞_3 小时前
苍穹外卖-Day08(缓存套餐)
java·redis·缓存
过期动态3 小时前
【LeetCode 热题 100】移动零
java·数据结构·算法·leetcode·职场和发展·rabbitmq