結果
問題 | No.188 HAPPY DAY |
ユーザー | takenta |
提出日時 | 2016-03-29 21:27:56 |
言語 | D (dmd 2.107.1) |
結果 |
AC
|
実行時間 | 1 ms / 1,000 ms |
コード長 | 732 bytes |
コンパイル時間 | 578 ms |
コンパイル使用メモリ | 78,036 KB |
実行使用メモリ | 4,372 KB |
最終ジャッジ日時 | 2023-09-02 20:57:59 |
合計ジャッジ時間 | 938 ms |
ジャッジサーバーID (参考情報) |
judge15 / judge13 |
(要ログイン)
ソースコード
import std.stdio; import std.string; import std.conv; import std.algorithm; import std.range; void main() { happyday.writeln; } int happyday() { auto month = [1,2,3,4,5,6,7,8,9,10,11,12]; auto result = reduce!((acc, mon) => acc + month_happydays(mon))(0, month); return result; } int month_happydays(int mon) { auto day = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31].map!("a / 10 + a % 10"); auto month_days = day; switch (mon) { case 2: month_days = day.take(29); break; case 4: case 6: case 9: case 11: month_days = day.take(30); break; default: break; } return count(month_days, mon).to!int; }