D問題をC++とPythonで解いてみました。ABC320は、2023年9月16日21:00に実施されました。紹介はこちらに、プログラミングの方針はこちらに記事があります。873)問題はリンク先をご覧ください。Positionグラフの各頂点までの距離を求める問題として解くことができます。解答案グラフの問題として解きます。人がいる場所を頂点とします。辺があれば、座標の差分(diff)が設定できます。頂点1からDFSを使って頂点を探索していきます。辺で繋がっている頂点との座標の差分から、辺の先の座標(dist)を求めることができます。結果的に頂点1と連結しているすべての頂点の座標が求まります。個の情報からグラフの辺を設定します(34、35行目)。格納します(36、37行目)。繋がっている頂点を探索していきます。その頂点の座標は差分から求めることができます(16、17行目)。頂点の座標は32ビット整数に収まらない場合があるため、64ビット整数にする必要があります。以下が、C++プログラムとなります。0;}AC(Accepted=正しいプログラム)と判定されました。版も基本的な考え方は同じです。再帰関数の呼出回数を増やしました(4、5行目)。座標をタプルで表現したため、全体的にすっきりと書けています。print("undecidable")こちらも「AC」と判定されました。最後にこの問題は、座標平面にある点の座標を求める問題と読めます。グラフの問題として解くことが分かれば、頂点1から各頂点までの距離(座標)を求める定番の手法が使えました。問題を紹介していきます。コメントをキャンセルメールアドレスが公開されることはありません。付いている欄は必須項目です上に表示された文字を入力してください。Contest)記事一覧ソフトウェア技術者アナダパンチ組込み製品の開発に従事しているソフトウェア技術者です。仕事でソフトウェア開発に従事しながら、趣味でもプログラミングを楽しんでいます。