@@ -11,69 +11,104 @@ name = "main"
11
11
path = " src/main.rs"
12
12
13
13
[dependencies ]
14
- # AtCoder 2019年言語アップデート以降に使用できるクレート
14
+ # AtCoder 2020年言語アップデート以降に使用できるクレート。
15
+ # 次のページに各クレートについての細かい紹介があります。
16
+ # https://github.com/rust-lang-ja/atcoder-rust-resources/wiki/2020-Update
17
+
18
+ # 数値型の抽象化、多倍長整数、複素数、分数、及び整数型の拡張
19
+ # num = "=0.2.1"
20
+ # num-bigint = "=0.2.6"
21
+ # num-complex = "=0.2.4"
22
+ # num-integer = "=0.1.42"
23
+ # num-iter = "=0.1.40"
24
+ # num-rational = "=0.2.4"
25
+ # num-traits = "=0.2.11"
26
+
27
+ # `num-traits`の自動実装
28
+ # num-derive = "=0.3.0"
29
+
30
+ # NumPyの`ndarray`のような多次元配列
31
+ # ndarray = "=0.13.0"
15
32
16
- # 競技プログラミングの入出力サポート
17
- proconio = { version = " =0.3.4 " , features = [ " derive " ] }
33
+ # 線形代数
34
+ # nalgebra = "=0.20.0"
18
35
19
- # f64のOrd/Eq実装
20
- # ordered-float = "=1.0.2 "
36
+ # (線形)代数の抽象化
37
+ # alga = "=0.9.3 "
21
38
22
- # 剰余関連。普通の整数型などと同じ感覚で扱うだけで自動的にmodを取ってくれる
23
- # 答えの整数をMで割った余りが要求される設問で便利
24
- # modtype = "=0.7.0"
39
+ # libmのRust実装
40
+ # libm = "=0.2.1"
25
41
26
- # 英数字などのASCII文字専用の文字列。文字にインデックスでアクセスしたり
27
- # substringを簡単に作ったりできる
28
- # ascii = "=1.0.0"
42
+ # 乱数
43
+ # rand = { version = "=0.7.3", features = ["small_rng"] }
44
+ # getrandom = "=0.1.14"
45
+ # rand_chacha = "=0.2.2"
46
+ # rand_core = "=0.5.1"
47
+ # rand_hc = "=0.2.0"
48
+ # rand_pcg = "=0.2.1"
29
49
30
- # BitSet。C++のbitsetに相当
31
- # bitset-fixed = "=0.1.0"
50
+ # 乱数の分布の追加
51
+ # rand_distr = "=0.2.2"
52
+
53
+ # グラフ
54
+ # petgraph = "=0.5.0"
32
55
33
- # Permutation生成。C++のnext_permutationに相当する機能を提供
56
+ # 挿入順を保持するhash table
57
+ # indexmap = "=1.3.2"
58
+
59
+ # 正規表現
60
+ # regex = "=1.3.6"
61
+
62
+ # staticアイテムの遅延初期化
63
+ # lazy_static = "=1.4.0"
64
+
65
+ # `NotNan<f64>`, `OrderedFloat<f64>`
66
+ # ordered-float = "=1.0.2"
67
+
68
+ # ASCII文字列
69
+ # ascii = "=1.0.0"
70
+
71
+ # permutation
34
72
# permutohedron = "=0.2.4"
35
73
36
- # スライスの強化。C++のlower_bound, upper_boundに相当する機能を提供
74
+ # スライスの拡張
37
75
# superslice = "=1.0.0"
38
76
39
- # イテレータの強化
40
- # itertools = "=0.8 .0"
77
+ # イテレータの拡張
78
+ # itertools = "=0.9 .0"
41
79
42
- # 高速なハッシュ関数
43
- # rustc-hash = "=1. 0.1"
80
+ # イテレータの拡張(一次元累積和と浮動小数点数の等差数列)
81
+ # itertools-num = "=0.1.3 "
44
82
45
- # 固定配列上のベクタ。ヒープ領域でなくスタック領域にアロケートされるので高速かもしれない
46
- # smallvec = "=0.6.10 "
83
+ # `BTreeMap`, `BTreeSet`, `HashMap`, `HashSet`のリテラル用マクロ
84
+ # maplit = "=1.0.2 "
47
85
48
- # 標準ライブラリのVecやHashMapに対応する永続データ構造
49
- # 永続データ構造は関数型言語によく見られるデータ構造で、要素を更新しても、そのデータ構造の
50
- # 以前のバージョンにアクセスできる。(更新の度に差分が記録されていくイメージ)
51
- # im-rc = "=13.0.0"
86
+ # 即席enum `Either<L, R>`
87
+ # either = "=1.5.3"
52
88
53
- # 多バイト長整数、分数、複素数など
54
- # num = "=0.2 .0"
89
+ # `BTreeMap`, `BTreeSet`, `HashMap`, `HashSet`, `Vec`の永続データ構造版
90
+ # im-rc = "=14.3 .0"
55
91
56
- # RNG 疑似乱数生成器 (randファミリー)
57
- # rand = { version = "=0.7.2", features = ["small_rng"] }
58
- # rand_chacha = "=0.2.1"
59
- # rand_pcg = "=0.2.0"
60
- # rand_distr = "=0.2.2"
92
+ # 可変長bit set
93
+ # fixedbitset = "=0.2.0"
61
94
62
- # 正規表現
63
- # regex = "=1.3.1 "
95
+ # 可変長bit set
96
+ # bitset-fixed = "=0.1.0 "
64
97
65
- # staticアイテムの遅延初期化
66
- # lazy_static = "=1.4.0"
98
+ # 競技プログラミングの入出力サポートその1
99
+ proconio = { version = " =0.3.6 " , features = [ " derive " ] }
67
100
68
- # 多次元配列
69
- # ndarray = "=0.13.0 "
101
+ # 競技プログラミングの入出力サポートその2
102
+ # text_io = "=0.1.8 "
70
103
71
- # 線形代数
72
- # nalgebra = "=0.18.1"
104
+ # 競技プログラミングの入出力サポートその3
105
+ # whiteread = "=0.5.0"
106
+
107
+ # 高速なハッシュ関数
108
+ # rustc-hash = "=1.1.0"
73
109
74
- # 代替ヒープアロケータ。条件によってはシステムアロケータより速いことも
75
- # jemallocator = "=0.3.2"
76
- # jemalloc-ctl = "=0.3.3"
110
+ # ある長さまでは要素を「直に」持つ可変長配列
111
+ # smallvec = "=1.2.0"
77
112
78
113
# ---------------------------------------------------------------------
79
114
0 commit comments