選択の幅を広げるということも考えていた。その分野を不得意とするチームが不利になる可能性が小さくなかった。正解した問題数ごとのチーム数を示す。正解した問題の組み合わせごとのチーム数をまとめたものである。問題ごとの提出チーム数,正解チーム数,最初の正解時間を示す。これは,審判団の目論見どおりである。審判団としてうれしい結果であった。勘定に入れないことになっている。少なくすることが望ましい。やさしくすることに努めた。結果は,ほぼ想定どおりだったと言える。正解数は,審判団が想定していたよりもかなり多かった。好結果だったと考えている。とどまったのは想定外だった。解法の設計もプログラミングも実は難しかったということだろう。審判団にとっても,問題の難易度を正確に判定することは難しい。以降も,想定したよりは正解数が少なかった。足止めされたチームが多かったからではないかと考えている。プログラミングをしたことのある人なら誰でも解けるレベルをねらって作題した。隣の値との差の最大値を求めるだけでよい。初歩的プログラミングの演習問題レベルの問題だと言えよう。解読に苦労したのではないかと想像している。回も解答を送ってきていない。二つ目のデータに同じプログラムで正解しなければならないというルールを正しく理解していないチームが相当数あるようだ。その場所から始まる単語列が短句の規則を満たしているかどうか判定するだけでよい。大きく違うわけではない。比べれば,かなりやさしかったようだ。しては近年なかったことである。計算機この問題の解法は,さまざまな考え方のものが可能である。普通に思いつくのは,再帰下降法などの構文解析の技法を適用することだろう。演算子を検出するたびに,この関数を再帰呼び出しすることになる。ピリオドの個数の少ない行が現れたら,関数から戻るようにすればよい。簡単な解法も可能である。下から上に逆向きに調べていけばよい。被演算子それぞれにどの演算子が適用されるかは簡単に調べられる。加算または乗算の計算をする。この操作を下から上に順次適用していけば解ける。割のチームがこの問題を解いた。これも近年にない好成績で,審判団の予想を越えていた。これだけの組み合わせをすべて調べるような解法は時間がかかりすぎて無理である。略す)を適用すべき問題であることはすぐに分かると思う。表の要素としてどんな値を記録するかである。記録する値の選び方の巧拙で,計算量が大きく変わる。問題文には,無駄な小銭の使い方をしてもよいと書いてある。店に渡す金額を決めたら,どんな小銭を何枚出すかは考えなくてよい。ように細かく把握する必要はない。この事実に気づくことがこの問題を解くための第一歩である。インデックスは手持ちの小銭の総額とすればよいことが分かるだろう。店での行動を決める鍵は,手持ちの小銭の額だからである。円以上かどうかで決まることを思い出してほしい。次元のインデックスとする解法である。円玉を入手するのに必要な消費金額の最小値を入れる。この表を店を一つずつ進みながら更新していけばよい。枚と小銭を得るのが常に最善である。円札だけ出して小銭を得る選択,の三つがある。