AOJ 2642 - 夕食
解法
日間で、日目に自炊を行ったと仮定します。
このとき、得られる幸福度は以下のようになります。
はじめの2つの項が食堂で食べることによって得られる幸福度、最後のΣの部分が自炊によって得られる幸福度になります。
これを式変形するとこうなります。
これを整えると、以下のようになります。
よって、自炊を行った日数を決め打ちしたときの幸福度の最大値は、を最小にしたときになります。
この値は、の選び方に依存しますが、を昇順にソートし、小さい順に選んでいけばよいです。
あとは、自炊を行った日数を全探索し、幸福度の最大値を求めれば答えとなります。
感想
とりあえず条件を立式して考える、できたとしても上手く答えにたどり着くかどうか微妙なところですね…