点赞+关注+评论,有人请你吃火锅!
题目描述
输入 x , y x,y x,y,输出 [ x , y ] [x,y] [x,y] 区间中闰年个数,并在下一行输出所有闰年年份数字,使用空格隔开。
输入格式
输入两个正整数 x , y x,y x,y,以空格隔开。
输出格式
第一行输出一个正整数,表示 [ x , y ] [x,y] [x,y] 区间中闰年个数。
第二行输出若干个正整数,按照年份单调递增的顺序输出所有闰年年份数字。
样例 #1
样例输入 #1
1989 2001
样例输出 #1
3
1992 1996 2000
提示
数据保证, 1582 ≤ x < y ≤ 3000 1582\le x < y \le 3000 1582≤x<y≤3000。
AC Code:
#include<bits/stdc++.h>
using namespace std;
int a[1420], gs = 1;
bool rn(int n) {
if ((n % 4 == 0 && n % 100 != 0) || (n % 400 == 0)) {
return 1;
}
return 0;
}
int main() {
int x, y;
cin >> x >> y;
for (int i = x; i <= y; i++) {
if (rn(i)) {
a[gs] = i;
gs++;
}
}
gs--;
cout << gs << endl;
for (int i = 1; i <= gs; i++) {
cout << a[i]<<" ";
}
return 0;
}
合格证:


862

被折叠的 条评论
为什么被折叠?



