题解 | #打印日期#

打印日期

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

#include <iostream>
#include<cstdio>
using namespace std;
int main() {
    int year, num;
    while (scanf("%d %d", &year, &num) != EOF) {
        int a[13] = { 0, 31, 0, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };

        if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
            a[2] = 29;
        } else {
            a[2] = 28;
        }
        int j = 0;
        int mon = 0;
        int temp = num;
        for (int i = 0; i < 13; i++) {
            j += a[i];
            if (j < num) {
                temp -= a[i];
                mon++;
            } else break;
        }

        printf("%d-%02d-%02d\n", year, mon, temp);
    }
    return 0;
}

全部评论

相关推荐

门口唉提是地铁杀:之前b站被一个游戏demo深深的吸引了。看up主页发现是个初创公司,而且还在招人,也是一天60。二面的时候要我做一个登录验证和传输文件两个微服务,做完要我推到github仓库,还要我加上jaeger和一堆运维工具做性能测试并且面试的时候投屏演示。我傻乎乎的做完以后人家跟我说一句现在暂时不招人,1分钱没拿到全是白干
你的秋招第一场笔试是哪家
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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