3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【競技プログラミング】AtCoder Beginner Contest 382問題_解法イメージ

Last updated at Posted at 2025-06-09

既存投稿一覧ページへのリンク

一覧ページ

C問題解法アプローチ

ナンバリングと美食度を降順に並べて解こうと思ってたけど、それだと普通にTLEしそう。
この問題から二分探索の発想は普通に出てこなかった・・・。

最近、漫画熱が再燃してきてきたせいで、この問題読んだ瞬間「鉄鍋のジャン」や「食戟のソーマ」を思い出した。そもそも、「食戟のソーマ」が最近の漫画というカテゴリなんだけど、もう6年前に完了しているとかビックリですわ。葬送のフリーレンが始まるより、食戟のソーマが完結した方が早いのね。
AtCoderの問題を具体化する際、漫画の記憶年表にして出題してみたら面白そうな問題が出来上がるかも。ChatGPTとか使えば作れそうな気もするけど。

例1

美食度と美味しさが与えられる
1uR9lRq9FMefGhit.png

前に座っている人より美食度が高い人は寿司を食べられないので、前の人と同じ美食度に置き換える。
2N8GneIT2yihyd35.png

(前の人より美食度を小さくしてしまうと、二分探索で面倒になるので、同じ美食度にする)
→ 食べられる皿の数に制限を設けたり、並び順が円形で、取る順番を保持するようにしたら、若干難易度があがるのかな?少なくとも二分探索では解けなさそう。

各皿ごとに二分探索を行い、何番目の人に食べられるか解答していく。
4JUsL0RJr8QciCRj.png

例2 脳内トレース用

美食度と美味しさが与えられる

4OylTuaNW26f7AsL.png

解答

2番目、3番目の人、美味いもの全部食べられててカワイソ・・・
5fsAHsLMq8rFJalM.png

同じ手順でトレースすると下記のような解答になると。

あとは、これをTLEしないようにpythonを始めプログラミングコードに落とし込めば良いっと。

D問題解法アプローチ

問題が掴みどころがないので、具体的数字で検証

  1. N=5, M=41のとき
    1uR9lRq9FMefGhit.png

  2. N=5, M=42のとき
    2N8GneIT2yihyd35.png

TLEするかどうかは別として、下以下のような木を作り、小さい順に列挙しろって問題か。
4JUsL0RJr8QciCRj.png

  1. N=5, M=43のとき

4OylTuaNW26f7AsL.png

ACコードと同様の結果も得られそうだし、余裕があるときにコーディングしてみますか。
木なら嫌ってほどやったし。

最近、ペンタブ買ったのですが、6000円くらいなのに、物凄い良い買い物だった。
タッチパネルより使い勝手良いし、今までイラスト書かないから、不要なものという先入観で損してたわ。

3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?