闰年是为了弥补因人为历法规定造成的年度天数与地球实际公转周期的时间差而设立的。
我们已经做过一道闰年的题了。
众所周知,年份分为闰年和平年。 闰年的判断依据是:能被4整除但不能被100整除,或者能被400整除。其中能被400整除的年份,不仅是闰年,还被称为“世纪闰年”。
现在请你计算出,从某指定年份至今,一共出现了多少个闰年,又有多少个世纪闰年。
如果是世纪闰年,还请你输出哪些年份是世纪闰年。
输入数据仅一个整数,表示起始年份。
注意:如果是公元前,会以“-年份”表示,比如公元前221年秦灭六国,会输入-221
输出数据有两行,第一行为两个空格隔开的整数,表示从起始年份至今,出现了多少个闰年,以及多少个世纪闰年。
输出第二行,为世纪闰年的年份,如果有多个世纪闰年,多个答案之间以空格隔开;如果没有世纪闰年,则第二行无需输出。
1949
18 1
2000
1949年至今,出现了18个闰年,1个世纪闰年
世纪润年是2000年
#include<bits/stdc++.h>
using namespace std;
int main()
{
int y,suma=0,sumb=0,ans=0;
cin>>y;
for(int i=y;i<=2022;i++)
{
if(i%400==0||i%4==0&&i%100!=0)
suma++;
if(i%400==0)
{
sumb++;
ans=i;
}
}
cout<<suma<<" "<<sumb<<endl<<ans;
return 0;
}