天天看點

藍橋杯 基礎練習 閏年判斷 C/C++/Java/Python描述

藍橋杯 基礎練習 閏年判斷 C/C++/Java/Python描述

大家好,我叫亓官劼(qí guān jié )

題目

資源限制

時間限制:1.0s 記憶體限制:256.0MB

問題描述

給定一個年份,判斷這一年是不是閏年。

當以下情況之一滿足時,這一年是閏年:

  1. 年份是4的倍數而不是100的倍數;
  2. 年份是400的倍數。

其他的年份都不是閏年。

輸入格式

輸入包含一個整數y,表示目前的年份。

輸出格式

輸出一行,如果給定的年份是閏年,則輸出yes,否則輸出no。

說明:當試題指定你輸出一個字元串作為結果(比如本題的yes或者no,你需要嚴格按照試題中給定的大小寫,寫錯大小寫将不得分。

樣例輸入

2013

樣例輸出

no

樣例輸入

2016

樣例輸出

yes

資料規模與約定

1990 <= y <= 2050。

C/C++解法

我們直接進行判斷輸出,注意這裡的cout後面的條件運算符要在外面加​

​()​

​,題解代碼為:

#include <iostream>
using namespace std;
int main(){
    int y;cin>>y;
    cout<<((y%4 == 0 && y%100 !=0) || (y%400 == 0) ? "yes" : "no");
    return 0;
}      

Java解法

邏輯與C/C++一緻,我們直接輸出即可,完整題解代碼為:

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int year = scanner.nextInt();
        System.out.println(((year%4 == 0 && year%100 !=0) || (year%400 == 0) ? "yes" : "no"));
    }
}      

Python解法

year = int(input())
if (year%4 == 0 and year%100 != 0) or (year%400 == 0):
    print("yes")
else:
    print("no")