题解 | 今年的第几天?

今年的第几天?

https://www.nowcoder.com/practice/ae7e58fe24b14d1386e13e7d70eaf04d

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
using namespace std;
void Nextday(int& year, int& month1, int& day1) {
    int arr[]{ 0,31,28,31,30,31,30,31,31,30,31,30,31 };
    bool isLeap=false;
    if (year % 400 == 0 || year % 4 == 0 && year % 100 != 0) { isLeap = true; }
    if (isLeap) { arr[2] = 29; }
    ++day1;
    if (day1 > arr[month1]) {
        day1 = 1;
        ++month1;
    }
}
int main() {
    int year, month, day;
    while (scanf("%d%d%d", &year, &month, &day) != EOF) {
        int count = 1;
        int month1 = 1;
        int day1 = 1;
        while (true) {
            if (month1 != month || day1 != day) {
                Nextday(year, month1, day1);
                ++count;
            }
            else {
                break;
            }
        }
        printf("%d\n", count);
    }
    return 0;
}

#pieceofshit#
全部评论

相关推荐

在看数据的傻狍子很忙碌:学生思维好重,而心很急,自己想想真的能直接做有难度的东西吗?任何错误都是需要人担责的,你实习生可以跑路,你的同事领导呢
点赞 评论 收藏
分享
牛客583549203号:腾讯还好,况且实习而已,实习生流动性很大,属于正常现象,记得和HR委婉解释
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务