File: expl-08.cpp

package info (click to toggle)
libsdsl 2.1.1%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: bullseye, buster
  • size: 3,980 kB
  • sloc: cpp: 42,286; makefile: 1,171; ansic: 318; sh: 201; python: 27
file content (22 lines) | stat: -rw-r--r-- 617 bytes parent folder | download | duplicates (18)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
#include <sdsl/bit_vectors.hpp>

using namespace std;
using namespace sdsl;

int main()
{
    bit_vector b = bit_vector(8000, 0);
    for (size_t i=0; i < b.size(); i+=100)
        b[i] = 1;
    sd_vector<> sdb(b);
    sd_vector<>::rank_1_type sdb_rank(&sdb);
    for (size_t i=0; i<=sdb.size(); i+= sdb.size()/4)
        cout << "(" << i << ", " << sdb_rank(i) << ") ";
    cout << endl;
    rrr_vector<> rrrb(b);
    rrr_vector<>::rank_1_type rrrb_rank(&rrrb);
    for (size_t i=0; i<=rrrb.size(); i+= rrrb.size()/4)
        cout << "(" << i << ", " << rrrb_rank(i) << ") ";
    cout << endl;
}