37.50.48

%20 の ブログ

2017-01-01から1年間の記事一覧

yukicoder No.619 CardShuffle

この記事は yukicoder No.619 CardShuffle の解説です。 考え方 問題を見ればセグ木を使えば解けることは予想できる。 セグ木に載せるべき「部分的な計算結果」どうしをつなげて掛け算をしたときの掛け算の影響範囲を考えると、「部分的な計算結果」は a+b+c…

3の倍数を正規表現で

leading zero を許容しない十進非負整数は、 /^(0|[1-9][0-9]*)$/ と表現できる。これは、 /^(0|([1-9]0*)+)$/ と表現することもできる。 以下では、「数」は「 leading zero を許容しない十進非負整数」と同じ意味で扱う。 「 x が 3 の倍数である」と「 x …

yukicoder No.502 階乗を計算するだけ

この記事は、yukicoder No.502 階乗を計算するだけ の解説というより、自分が書いたコードの解説です。 作問者による解説にもある通り、この問題は、予め一部の値を計算しておいて、それを埋め込むことで解ける。作問者は「例えば1000個を埋め込む」と解説し…

yukicoder No.491 10^9+1と回文

この記事は、yukicoder No.491 10^9+1と回文 の解説です。 N の桁数を L とする。10^9+1 の倍数かつ回文数であるような 1 以上 N 以下の整数のうち最大のものを M とする。M が求まれば、最終的な答えは簡単に求まる。 例えば、M=543212345543212345 (これを…

正規表現の積

誰か解いて 追記ここから (長さの制約は適当なのでもっと大きくしても解けるなら大きくしてもらって構わない。)— %20(物理的身近に人がいない) (@henkoudekimasu) 2017年3月5日 一応言っておくと、自力で解けないから「誰か解いて」と言ったのであって、…

Perl でコードゴルフをする時に空白が必要なのはどういう場合か

普通にプログラミングをする上では、空白文字(スペース・タブ・改行)というものは多用されるが、文法上必須であるものは少ない。コードゴルフにおいては、最終的に出来上がるコードには、文法上必須であるような空白以外は不要である。Perl で空白が必要に…