したがって、「4で割り切れない、100で割り切れる」ということはあり得ないためこの4通りの判定が行えれば良いことは分かると思います。
この4つの判定を見ると3つの条件のうち1つの条件もしくは3つの条件を満たせば閏年になり、条件をすべて満たさないもしくは2つ満たした場合には閏年にはならないことも分かると思います。
ここまでくればあとは「3つの条件のうち1つの条件もしくは3つの条件を満たす」というのをいかに簡略化できるかにかかってきます。
4で割り切れるというのはDY MOD 4==0と記述できますが、これは他の方も書いているように!(DY MOD 4)に置き換えることができます。
それと包含関係を考慮した場合にN=28+!(DY MOD 4)-!(DY MOD 100)+!(DY MOD 400)がある年(DY)における2月の日数になるというわけです。
(続く)
0そうだね プレイ済み