競プロで Rust を使い始めて半年が過ぎました。いまの私のプラクティスを羅列的に書いていきます。 筆者 AtCoder 水色 競プロ参戦記 やってます フレームワーク 自作フレームワークはこちら 。いつもこれの main 関数の中に解答を書いて提出しています。 入力のパース 標準機能だけで入力をパースしようとするとだるいです。Qiita にも、すでにこの問題を解決しようという記事がいくつか上がっています。 私は上述のフレームワークに含まれている read! マクロ を使っています。実装が短い (23行) のと、見た目が関数っぽくて好み。 //! グラフのパースの例 let (N, M) = read!(usize, usize); let weightd_edges = read![[usize, usize, i64]; M]; パフォーマンスは若干悪くて、C++ で std::cin