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;
}
相关推荐
Tisfy6 天前
LeetCode 1415.长度为 n 的开心字符串中字典序第 k 小的字符串:DFS构造 / 数学O(n)
数学·算法·leetcode·深度优先·字符串·dfs·模拟
zaiyang遇见6 天前
[CSP-J 2020] 优秀的拆分
贪心·模拟·csp-j·信息学奥赛·程序设计竞赛·二进制拆分
Tisfy7 天前
LeetCode 3296.移山所需的最少秒数:优先队列
算法·leetcode·题解·优先队列·模拟
进击的荆棘9 天前
优选算法——模拟
java·开发语言·算法·模拟
List<String> error_P1 个月前
蓝桥杯高频考点练习:模拟问题“球队比分类”
数据结构·python·算法·模拟·球队比分
七夜zippoe1 个月前
模拟与存根实战:unittest.mock深度使用指南
linux·服务器·数据库·python·模拟·高级摸您
Tisfy1 个月前
LeetCode 3379.转换数组:下标取模
算法·leetcode·题解·模拟·取模
Tisfy1 个月前
LeetCode 3713.最长的平衡子串 I:计数(模拟)
算法·leetcode·题解·模拟
CUC-MenG1 个月前
Codeforces Round 1078 (Div. 2) A,B,C,D,E,F1个人题解
数学·前缀和·dfs·模拟·dp·线性dp·后缀和·树上dp
Tisfy2 个月前
LeetCode 3637.三段式数组 I:一次遍历(三种实现)
算法·leetcode·题解·模拟·数组·遍历·moines