小さい整数のベクトルライブラリ
小さい整数のベクトルの実装2種: small_vector_u64<bits> … unsigned long long の中にビットを分けて格納 small_vector_string … string の各文字に格納 ベクトル自身を safe_umap (unordered_map.cc) などのキーに使える. 使用法 small_vector_u64<bits> small_vector_u64<4> vec1; // 4ビットずつ使用.長さは 64 / bits (この場合は 64/4 = 16) に固定 // 初期値は全要素が0 vec1[0] = 3; vec1[1] = 15; vec1[2] = 20; small_vector_u64<4> vec1{3, 15, 20}; // 上と同じになる. small_vector_u64<4> vec1(vector{3, 15, 20}, 3); // 上と同じになる.第1引数は operator[] を持つこと.第2引数に長さを与える cout << vec1[0] - vec1[2] << endl; cerr << vec1 << endl; // << は定義済 cerr << vec1....