0

フェンウィックツリーを使用して文字列を範囲クエリしたい。しかし、私のコードで何か問題が発生しています。連結によりエラーが発生します Eror is:[Error] no match for 'operator+=' (operand types are 'std::vector >' and 'std::string {aka std::basic_string}') 文字列 s が与えられた場合、このフェンウィック ツリーに文字列を格納します。例: s=abcdef、BIT では、(上から下) ab-c abcd-e abcd-ef ツリー構造のようにする必要があります

vector<string> BIT[100005];
    int n;
    void BI(int x,string c)
    {
        for(;x<=n;x+=x&-x)  
        {
            BIT[x]+=c;
        }

    }

    int main()
    {
        cin>>n;
        string s;
        for(int i=1;i<=n;i++)
        {   cin>>s;
            BI(i,s);
        }

    }
4

1 に答える 1