KY257 日期累加

KY257 日期累加

⭐️难度:中等

⭐️类型:模拟

📖题目:

🌟思路:

利用NextDay函数,一天一天地加。

📚题解:

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

using namespace std;

void NextDay(int& year, int& month, int& day) {
    int dayOfMonth[] = { 0,31,28,31,30,31,30,31,31,30,31,30,31 };
    int isLeap;  // 是否是闰年
    if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0)) {  // 闰年二月29天
        dayOfMonth[2] = 29;
    }
    day++;
    if (day > dayOfMonth[month]) {
        day = 1;
        month++;
    }
    if (month > 12) {
        month = 1;
        year++;
    }
}

int main() {
    int n;
    scanf("%d", &n);
    int year, month, day, sum;
    for (int i = 0;i < n;i++) {
        int count = 0;
        scanf("%d%d%d%d", &year, &month, &day, &sum);
        while (count < sum) {
            NextDay(year, month, day);
            count++;
        }
        printf("%04d-%02d-%02d\n", year, month, day);

    }

    return 0;
}
相关推荐
Q741_1473 小时前
每日一题 3740. 三个相等元素之间的最小距离 I 3741. 三个相等元素之间的最小距离 II 模拟 哈希表 C++ 题解
c++·算法·leetcode·模拟·数组·哈希表
Q741_14716 小时前
每日一题 力扣 3655. 区间乘法查询后的异或 II 模拟 分治 乘法差分法 快速幂 C++ 题解
c++·算法·leetcode·模拟·快速幂·分治·差分法
Q741_1472 天前
每日一题 力扣 3653. 区间乘法查询后的异或 I 模拟 数学 位运算 C++ 题解
c++·数学·算法·leetcode·力扣·模拟
Q741_1479 天前
每日一题 力扣 2751.机器人碰撞 映射 模拟 栈 C++ 题解
算法·leetcode·模拟··映射
A923A12 天前
【洛谷刷题 | 第七天】
算法·模拟·洛谷
浮白载笔的夜晚14 天前
【Virtuoso】PVT工艺角配置问题
学习·模拟·virtuoso
Q741_14714 天前
每日一题 力扣 2946. 循环移位后的矩阵相似检查 力扣 155. 最小栈 数学 数组 模拟 C++ 题解
c++·算法·leetcode·矩阵·模拟·数组·
Tisfy19 天前
LeetCode 1886.判断矩阵经轮转后是否一致:模拟
算法·leetcode·矩阵·题解·模拟
Tisfy20 天前
LeetCode 3643.垂直翻转子矩阵:原地修改
算法·leetcode·矩阵·模拟
Tisfy21 天前
LeetCode 3567.子矩阵的最小绝对差:暴力模拟
leetcode·矩阵·题解·模拟·暴力