paiza コーディングスキルチェック (うるう年を求める)


  • paizaのコーディングスキルチェックでこう書いたら嫌な受講者なのだろうか…?

問題

私の回答

  • うるう年判定の条件が参考に出てますが、問題自体は「入力された整数がグレゴリオ暦でうるう年であるか判定するプログラムを書いてください。」だけです。
  • 条件は4で割り切れるとかありますが、結果2月29日が存在するのが「うるう年」ですよね。
  • なんで、こんな回答です。
import datetime


def leap(year):
    try:
        datetime.date(int(year), 2, 29)
        return True
    except Exception as inst:
        return False


input_lines = int(input())
for i in range(input_lines):
    year = input()
    is_leap = ("is a leap" if leap(year) else "is not a leap")
    print("{year} {is_leap} year".format(year=year, is_leap=is_leap))

  • もちろん答えはあってます。
$ python leap.py < year.txt
1000 is not a leap year
1992 is a leap year
2000 is a leap year
2001 is not a leap year

これって...

  • 多分に素直じゃないですがw採用側はどう思うんでしょうね?