ラベル ワーシャルフロイド法 の投稿を表示しています。 すべての投稿を表示
ラベル ワーシャルフロイド法 の投稿を表示しています。 すべての投稿を表示

2025年1月9日木曜日

Hello 2025

 Cまで三完。

コンテスト後のツイート

D. Gifts Order

 けんちょんさんの記事を参考にAC。

 セグ木を使うのは第一候補だったのにこれを思いつかなかったのは良くない。可換性が成り立たないとセグ木が使えそうという判断が鈍ってしまうようだ。気を付けよう。

E2. Another Exercise on Graphs (hard version)

 こたつがめさんの放送の振り返りを見てAC。

 ワーシャルフロイド法で、一辺を変更するときは辺の二乗の計算量でできることは覚えておきたい。
 妙に制約が厳しい気がするけど、クエリ問題だから仕方ないのかな。(と思ったら、公式解説の方法はもっと速いらしい)

G. Secret Message

 証明は難しいが、「十字のマスのうち一マスを塗れば良さそう」というところから発想することは可能だったか。
 ただ、制約が厳しく、二次元配列を一次元に直さないと通らなかったので、コンテスト中にACするのは厳しかったかもしれない。

2024年1月28日日曜日

AtCoder Beginner Contest 338

 Eまで五完。

コンテスト後のツイート

F - Negative Traveling Salesman

 解説AC。

 ワーシャルフロイド法により、二点間の最短距離を全て求めておく。その距離を使って、全点を巡る距離をbit DPで求めれば良い。
 x→zよりx→y→zが短いとき、前者で計算してしまうのが問題になる気がするが、結局後者でも計算することになり、通った集合が後者の方が優れているのでこれで答えが求まる。

G - evall

 解説放送を見てAC。

 解説放送を見たときは実装が大変に思えたが、そこまで大変な実装ではなかった。なお、再帰で書いたらPyPyではTLEになり、Pythonで提出したらACした。