Rust
文法・言語仕様
入出力の方法
- proconio を使わない Rust の標準入力(Rust 1.61 ~ Rust 1.65 の一連のアップデートについて) - 最新の言語機能により標準入力がシンプルに書けることが紹介されている。
標準ライブラリの使い方
- Rust初心者のAtCoderでよく使う言語機能とライブラリー覚え書き - Rust 1.42で競技プログラミングに参加するときに、初心者が利用する可能性が高い言語機能・標準ライブラリが紹介されている。また、C++との対応関係も併記されている。
言語アップデートによる新機能のまとめ
- AtCoder言語アップデートでRustの入出力が楽になっていた - AtCoderの言語アップデートに伴って追加された入出力関連の便利なライブラリが紹介されている。また、追加されたライブラリ一覧も掲載されている。
2025年11月以降
- 個人的に嬉しい、AtCoder の Rust 言語アップデートで変わるもの一覧(Rust 1.70 → Rust 1.86) - 言語アップデート(2025年)によって利用できる機能と、それらの用途・従来からの改善点がまとめられている。
- 【Rust】AtCoder 2025/10 の言語アップデート対応の Cargo.toml - 使用できる言語とライブラリの一覧に基づいて、利用できるライブラリがTOML形式で紹介されている。
2023年8月以降
- Rust 1.43~1.67 の競プロ的に気になる変更点 - AtCoderの言語アップデート(2023年)を見越して、競技プログラミングでの利用が想定される新機能がまとめられている。また、ローカル環境で最新バージョンを利用しているユーザが参照すると、ジャッジ環境でのビルドエラーを回避しやすくなると思われる。
- AtCoder 言語アップデート クレート個人的感想 - AtCoderの言語アップデート(2023年)で利用可能なクレートのうち、筆者が便利だと感じたものについて言及している。
別の言語と同等の機能を探す
- 【競プロ】Python使いがRustを「完全に理解する」までのTips - PythonユーザがRustでコードを書くときのTipsがまとめられている記事。
アルゴリズム・データ構造の活用による高速化
- Rustで競技プログラミングよくばりセット - 競技プログラミングで使用頻度が高い関数/メソッド、データ構造、アルゴリズムの実装と例題・解答例が紹介されている。
- RustでMultiSetを実装する - Rustで、C++の
Multisetに相当する機能の実装と使い方を紹介している記事。 - 【Rust】ACL の遅延セグ木をベースに双対セグ木を作ってみた - 双対セグメント木の利点および実装例が紹介されている。
- 3 種類の強連結成分分解アルゴリズムや、そのバリエーションの速度比較 - 複数の強連結成分分解アルゴリズムの実装例の紹介と実行速度が比較されている。
汎用的な最適化・高速化
- 速いRustコードを書きたい - 高速なコードを書くために、ボトルネックの特定・入出力の高速化・用途に応じた型やメソッドの選択などの知見がまとめられている。