通信ができないアンテナの組が存在するかどうか」は距離が最も離れているアンテナの組の距離がk以下であれば存在しないと言えます。よって、最も距離が離れるaとeの距離を比較すればよいです。各料理が10の倍数の時刻にしか注文できないということは、ある料理の調理時間がA分だとすると、次の料理を注文できるまでの時間は、「A以上の10の倍数」となります。次に「最後の料理が届く最も早く」するには、最後の料理をどの料理にするかがポイントです。調理時間が10で割り切れない料理が存在する場合、10で割った余りが最小の料理を最後に注文すれば、全体の時間が最短になります。運べる人数が少ない交通機関がボトルネックになるので、全ての交通機関の運べる人数を最少のものにそろえても結果は同じになります。全てのケーキの組み合わせを求めてから上位K個を求めると、組み合わせが109となり間に合いません。そこで次のような工夫をします。上位K個に入るものは、各キャンドルのケーキのうち美味しさが上位K個以内に入っているものの組み合わせに必ずなる「1のキャンドルの上位K個」と「2のキャンドルの上位K個」の組み合わせを全て求めてそのうち上位K個と「3のキャンドルの上位K個」の組み合わせを求めてから上位K個を求めるこのようにすれば、組み合わせはK2のオーダーに抑えることが出来るので十分間に合います。寿司の数が105なので、O(N)であれば間にいそう。いうことで、まずは全探索で考えてみる。2011の決勝の問題Aを解いてみた。長さNの数列の切れ目はN-1通りあるため、3つの切れ目を選ぶ組み合わせはn-1C3通りあります。最大になるのは、mがaiの倍数-1の時で、余りはai-1になる。最初に問題を見て、これ本当に200点?って思うくらい悩んだ。aiがとりうる値は、ai-1、ai、ai+1の3つです。コメントをキャンセルメールアドレスが公開されることはありません。