【KUPC2021】競プロの作問をした

概要

shakayami.hatenablog.com

この記事で作問したいと言っていましたが、作問することができました。*1

というのも、実は京都大学プログラミングコンテスト2021の準備に関わってました。

 

atcoder.jp

競プロの作問について

数学の作問とは少し勝手が違います。オンラインジャッジシステムによる採点をするために、テストケースの作成等たくさんの作業があります。(詳しいことは他の人が解説していると思います)初めてやるような作業が多かったので他のメンバーの方々に助けられながらやってました。

担当した問題

H問題-Symmetricを主に担当しました!

atcoder.jp

解説

よくばりなので、3種類の解説を書きました。

解説1

atcoder.jp

解説2

atcoder.jp

解説3

atcoder.jp

 

---------

他の人の解答を見る限り、解説1の手法でやっている人が多くて、たまに解説2の手法で解いてる人もいたという感じです。

 

裏話

なぜこのような式が出てきたのかというと、個人的に好きな式だからです。

 

分子の多項式は $ n,m $ が小さい場合は高校数学の数学IAで因数分解の練習問題としてよく出てきます。

 

高校生~大学生の頃の僕はこの式の魅力に惹かれて、 $ n,m $ が大きいときにどのような因数分解の式になるのかをがんばって規則性を見つけようとしました。

 

しかし、数字が大きくなるにつれて因数の多項式の項数もインフレするように増えてきたため、数式処理ソフトを駆使しても残念ながら規則性を見つけることは断念してしまいました。

 

ちなみに、規則性を完全に見つけることは断念しましたが、少なくとも分子の式は$(\alpha-\beta)(\beta-\gamma)(\gamma-\alpha)$で割り切れるだろうということは分かっていました。

 

…と、自分語りはほどほどにして数学的な話をします。

 

まず、分子の式は分母で割り切れるため、結局純粋な多項式の形になります。

これについては、$\alpha=\beta$を分子に代入すると0になるため、因数定理からわかります。$(\beta-\gamma),(\gamma-\alpha)$についても同様です。

 

また、この式は分母、分子ともに交代式となっているため、最終的には$\alpha,\beta,\gamma$についての対称式となります。

 

よって、対称式は基本対称式の組み合わせとして書けるため、$s,t,u$の値が決まれば、最終的な式の値は一意に決まります。

 

ちなみに、ここらへんの話は、交代式の因数分解と実践的な例題 | 高校数学の美しい物語に詳しい説明が載っています。(外部サイト)

 

あと、「答えは有理数であることが保証される」と書いていますが、実際は答えは有理数になるだけではなく整数となります。(これは解説1を見るとわかりやすいと思います。)整数ではなく有理数と書いたのはわざとです。

 

ちなみに、問題に出てくる式は行列式を使うことで

 

$$\det\left(\begin{pmatrix}1&1&1\\\alpha^n&\beta^n&\gamma^n\\\alpha^m&\beta^m&\gamma^m\end{pmatrix}\cdot \begin{pmatrix}1&1&1\\\alpha&\beta&\gamma\\\alpha^2&\beta^2&\gamma^2\end{pmatrix}^{-1}\right)$$

 

とも書くことができます。

 

最後に

貴重な体験ができました。皆さんありがとうございました。

あと無事に終わってよかったです。

*1:最近は青と黄色をさまよっています。