题目描述

小明刚刚学习了如何判断平年和闰年,他想知道两个年份之间(不包含起始年份和终止年份)的闰年年份具体数字之和。你能帮帮他吗?

输入格式

输入一行,包含两个整数,分别表示起始年份和终止年份。约定年份在 1 到 2022 之间。

输出格式

输出一行,包含一个整数,表示闰年年份具体数字之和。

输入输出样例

输入 #1

2018 2022

输出 #1

2020

分析

问题分析

需要计算两个给定年份之间的所有闰年(不包含起始和终止年份),并将这些闰年的数字逐位相加得到最终结果。闰年的判断规则如下:

  1. 能被4整除但不能被100整除的是闰年。
  2. 能被400整除的也是闰年。

解决步骤

遍历起始年份+1到终止年份-1之间的所有年份,判断是否为闰年。如果是闰年,则将该年份的每一位数字相加,并累加到总和中。

AC代码

#include<bits/stdc++.h>
using namespace std;
int main(){
    int start,end;
    cin>>start>>end;
    int ans=0;
    for(int i=start+1;i<=end-1;i++){//从start+1到end-1
        if(i%400==0 || (i%4==0 && i%100!=0)){ //判断是否为闰年 
            ans+=i;
        } 
    }
    cout<<ans<<endl;
    return 0;
}

Logo

智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

更多推荐