当前位置: 首页 > wzjs >正文

响应式网站代码专业地推团队

响应式网站代码,专业地推团队,河南省监理建设协会网站,网站空间ftp下载慢Problem - 1891F - Codeforces 动态维护比较困难,可以发现一个节点的权值只跟他后面的2操作有关,我们可以先把树建好,记录所有操作,倒着枚举操作,如果当前操作是2,则修改x整个子树的值;如果当前…

Problem - 1891F - Codeforces

动态维护比较困难,可以发现一个节点的权值只跟他后面的2操作有关,我们可以先把树建好,记录所有操作,倒着枚举操作,如果当前操作是2,则修改x整个子树的值;如果当前操作是1,则记录下当前节点的权值为答案。

对于一个已经建好的树,如何修改整个子树的值?我们可以记录下这个树的dfs序,在这个过程中,回溯的时候可以记录下当前节点子树所对应dfs序的截止位置。我们直接对这个区间进行修改就可以了。可以使用差分树状数组

#include <bits/stdc++.h>
using namespace std;
#define int long long
const int N = 1e6 + 10;
const int mod = 1e9 + 7;
#define pii pair<int, int>
#define lowbit(x) (x & (-x))
int sz;
struct node
{int opt, v, x;
};
vector<int> e[N];
vector<int> path; // 记录dfs序
int idx[N];       // 节点u在path中的下标
int las[N];       // 节点u的子树在path中的最后截止位置
void dfs(int u)
{path.push_back(u);for (int v : e[u])dfs(v);las[u] = path.size() - 1; // u的子树到此为止
}
int tr[N]; // 树状数组作差分,单点修改和区间查询
void add(int x, int k)
{for (int i = x; i <= sz; i += lowbit(i))tr[i] += k;
}
int ask(int x)
{int sum = 0;for (int i = x; i > 0; i -= lowbit(i))sum += tr[i];return sum;
}
void solve()
{int q;cin >> q;sz = 1;vector<node> a(q + 1);for (int i = 1; i <= q; i++){cin >> a[i].opt;if (a[i].opt == 1){cin >> a[i].v;e[a[i].v].push_back(++sz);a[i].x = sz;}elsecin >> a[i].v >> a[i].x;}path.push_back(0);dfs(1);for (int i = 1; i < path.size(); i++)idx[path[i]] = i;vector<int> res(sz + 1, -1);for (int i = q; i >= 1; i--){if (a[i].opt == 1)res[a[i].x] = ask(idx[a[i].x]);elseadd(idx[a[i].v], a[i].x), add(las[a[i].v] + 1, -a[i].x);}res[1] = ask(1);for (int i = 1; i <= sz; i++)cout << res[i] << ' ';cout << endl;path.clear();for (int i = 1; i <= sz; i++){tr[i] = idx[i] = las[i] = 0;e[i].clear();}
}signed main()
{ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);int t = 1;cin >> t;while (t--)solve();
}
http://www.dtcms.com/wzjs/170367.html

相关文章:

  • 网站建设与网页制作教程做外贸网站的公司
  • 有站点网络营销平台关键词热度查询
  • 原创文章网站产品推广计划书怎么写
  • 个人网站域名后缀店铺引流的30种方法
  • 政府网站建设 互联网seo搜索排名
  • 网站建设中模板百度提交网站的入口地址
  • 体育馆做网站公司张家界网站seo
  • 泰国网站建设看网站搜索什么关键词
  • java是如何用来做网站的百度推广信息流有用吗
  • 做电力项目信息的网站互联网广告价格
  • 深圳有做网站最近价格广州seo网站推广公司
  • 网站建设官网免费模板新网站 seo
  • wordpress目录权限设置seo高级优化技巧
  • 浏览不良网站会被网警抓吗网络优化
  • 哪里可以做网站优化网上接单平台有哪些
  • 网站被挂马怎么办竞价推广出价多少合适
  • 做推广哪个食品网站好福州网站建设团队
  • 网站设计怎么做明信片西安网站seo工作室
  • 做网站一个月可以赚多少钱优化关键词的方法正确的是
  • 石景山网站建设设计公司郑州网站建设制作
  • 做公司网站一般多少钱品牌设计公司排名前十强
  • b2c wordpress南京关键词优化服务
  • 郑州正云网站建设培训心得体会100字
  • 合肥网站开发哪家好提供seo顾问服务适合的对象是
  • 怎么才能在百度搜到自己的网站百度seo课程
  • 外国建筑设计网站市场营销咨询
  • 中关村网站建设公司举三个成功的新媒体营销案例
  • ppt做的模板下载网站长沙百度开户
  • 国外案例网站深圳百度代理
  • 鞍山建一个网站大概要多少钱营销网络营销