C++ rope如何加快修改某一节点的值
  • 板块学术版
  • 楼主wangziwenhk
  • 当前回复2
  • 已保存回复2
  • 发布时间2023/12/28 16:12
  • 上次更新2023/12/28 20:06:44
查看原帖
C++ rope如何加快修改某一节点的值
727556
wangziwenhk楼主2023/12/28 16:12

RT

题目

#include <bits/stdc++.h>
#include "ext/rope"
using namespace std;
using namespace __gnu_cxx;
unordered_map<int,rope<int>>f;
int main() {
    int n,m;
    scanf("%d%d",&n,&m);
    int x[n];
    for(int i=0;i<n;i++){
        scanf("%d",&x[i]);
    }
    f[0]=rope<int>(x);
    int u,op,loc,value;
    for(int i=1;i<=m;i++){
        scanf("%d%d%d",&u,&op,&loc);
        f[i] = f[u];
        if(op==1){
            scanf("%d",&value);
            f[i].replace(loc-1,value);
        }
        else if(op==2)
            printf("%d\n",f[i][loc-1]);
    }
    return 0;
}

2023/12/28 16:12
加载中...