N=28+!(DY MOD 4)&&!!(DY MOD 100)||!(DY MOD 400) も間違えていました。 正しくは N=28+(!(DY MOD 4)&&!!(DY MOD 100)||!(DY MOD 400)) です。 ちなみに &&と*は似たような意味を持つことがあるので N=28+!(DY MOD 4)*!!(DY MOD 100)+!(DY MOD 400) と書くことが出来ます。