Skip to content

E02733: 判断闰年

math, http://cs101.openjudge.cn/practice/02733

判断某年是否是闰年。

输入

输入只有一行,包含一个整数a(0 < a < 3000)

输出

一行,如果公元a年是闰年输出Y,否则输出N

样例输入

2006

样例输出

N

提示

公历纪年法中,能被4整除的大多是闰年,但能被100整除而不能被400整除的年份不是闰年, 能被3200整除的也不是闰年,如1900年是平年,2000年是闰年,3200年不是闰年。

python
# 2022cs101, 高靖,城市与环境学院
#四年一闰,百年不润,四百年再润

a=int(input())

if a%4==0:
    if a%100==0:
        if a%400==0:
            print("Y")
        else:
            print("N")
    else:
        print("Y")
else:
    print("N")

遵循题面的约束条件实现。

python
a = int(input())
if (a % 3200 == 0) or ((a % 100 == 0) and (a % 400 != 0)):
    print('N')
elif a % 4 == 0:
    print('Y')
else:
    print('N')

C++ 实现

c++
#include <cstdlib>
#include <cstdio>
using namespace std;
int main() {
        int a;
        scanf("%d", &a);

        if ( a%4==0 ){
                if ( a%100==0 && a%400!=0 )
                        printf("N");
                else
                        printf("Y");
        }else
                printf("N");
}