AtCoderの問題をRustで解いていきます。AtCoderもRustも初心者ですが、温かい目で成長を見守っていただけるとありがたいです。
今回は、競プロ典型90問の061 - Deck(★2)を解きました。
std::collections::VecDeque
を使用しました。Deque(double-ended queue)は日本語で「両端キュー」と呼び、その名の通り両端でのデータ挿入・削除が得意なデータ型となっています。今回の問題では、
deck.push_front(self.x)
: カードを山札の一番上に入れるdeck.push_back(self.x)
: カードを山札の一番下に入れるとして、カードを山札(deck)に入れる動作を再現しています。
proconio::input!
マクロで構造体に入力を読み込む際、構造体の前に#[proconio::derive_readable]
を付ける