{"title":"yukicoder No.189 SUPER HAPPY DAY","description":"\u3069\u3046\u3067\u3082\u3044\u3044\u3051\u3069\u6700\u8fd1\u671d\u304c\u65e9\u3044\u305b\u3044\u3067\u3081\u3063\u3061\u3083\u7720\u3044\u3002\u554f\u984c:No.189 SUPER HAPPY DAY - yukicoder\u89e3\u6cd5:\u3044\u308f\u3086\u308b\u6841DP\u3092\u4f7f\u3046\u3002dp[n][sum][flag] = (\u4ecan\u756a\u76ee\u306e\u6570\u3092\u898b\u3066\u3044\u3066,\u30d5\u30e9\u30b0(\u307e\u3060\u4e0e\u3048\u3089\u308c\u305f\u6570\u305d\u306e\u307e\u307e\u306b\u306a\u308b\u53ef\u80fd\u6027\u304c\u3042\u308b\u304b)\u304cflag\u306e\u72b6\u614b\u306b\u306a\u3063\u3066\u3044\u3066\u548c\u304csum\u306b\u306a\u308b\u3088\u3046\u306a\u5834\u5408\u306e\u6570)\u3068\u3059\u308b\u3002 ll dp[2][222][2000][2]; const ll MOD = 1e9+9; void makeDP(const string& s, int a) { int n = s.size(); dp[a][0][0][1] = 1; for (int \u2026","blog_url":"https://mayokoex.hatenablog.com/","blog_title":"mayoko\u2019s diary","height":"190","html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fmayokoex.hatenablog.com%2Fentry%2F2015%2F04%2F22%2F203432\" title=\"yukicoder No.189 SUPER HAPPY DAY - mayoko\u2019s diary\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","author_name":"mayokoex","author_url":"https://blog.hatena.ne.jp/mayokoex/","image_url":null,"url":"https://mayokoex.hatenablog.com/entry/2015/04/22/203432","version":"1.0","type":"rich","categories":["yukicoder"],"width":"100%","provider_url":"https://hatena.blog","published":"2015-04-22 20:34:32","provider_name":"Hatena Blog"}