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

家具网站开发目的深圳互联网营销

家具网站开发目的,深圳互联网营销,帮人做推广的网站,西乡做网站Problem - H - Codeforces 题意&#xff1a; 思路&#xff1a; 这题应该算是铜牌题 铜牌题 简单算法 基础思维 简单复盘一下思路 首先&#xff0c;我们发现有个很特殊的条件&#xff1a; ti < 3 然后看一下样例&#xff1a; 注意到&#xff0c;对于一个结点 u &#…

Problem - H - Codeforces
题意:

思路:

这题应该算是铜牌题

铜牌题 = 简单算法 + 基础思维

简单复盘一下思路

首先,我们发现有个很特殊的条件: ti <= 3

然后看一下样例:

注意到,对于一个结点 u ,如果它的所有子节点中没有 tv = 3的,那么就肯定是沿着一棵子树走到底,然后去走剩下的子树

如果所有子节点中有 tv = 3的,那么可以先走到某个子节点,然后再走到这个 tv = 3的结点

注意到了子问题,那么很自然地去考虑树DP

注意到子问题可以分类成不算结点u 和 算结点u, 因此可以这样设计状态

设 dp[u] 为没有走过结点 u的这棵子树的贡献

然后考虑转移

因为 ti <= 3, 考虑在转移的时候暴力分讨

因为怎么转移和这些子节点中是否存在 tv = 3的结点有关,那么考虑先去把这些结点遍历一遍,看看是否存在,然后去转移

如果存在,那么就是先走到某个结点,再走到这个tv = 3的结点

考虑枚举这个“某个结点”,注意到tv = 3的结点可能会有多个,我们贪心地保留av最大的那个,这个可以考虑用multiset维护

为了计算贡献,我们设sum[u]表示所有子节点的 dp[v] 之和

此时的贡献为:

dp[u] = max{sum[u] - dp[v] + sum[v] + a[v] + *rbegin()}

然后考虑不存在tv = 3的结点,那么就是一次性走到底,再去遍历其他结点,此时贡献为 sum[u] + mx,其中 mx 为所有子节点中最大的 a[v]

为了防止出问题,我们在原来的multiset中先插入 -Inf

Code:

#include <bits/stdc++.h>#define int long longusing i64 = long long;constexpr int N = 1e5 + 10;
constexpr int M = 1e5 + 10;
constexpr int P = 2e2 + 10;
constexpr i64 Inf = 1e18;
constexpr int mod = 1e9 + 7;
constexpr double eps = 1e-6;std::vector<int> adj[N];int n;
int a[N], t[N];
int dp[N], sum[N];void dfs(int u, int fa) {std::multiset<int> S;int mx = 0;for (auto v : adj[u]) {if (v == fa) continue;dfs(v, u);sum[u] += dp[v];mx = std::max(mx, a[v]);if (t[v] == 3) S.insert(a[v]);}dp[u] = sum[u] + mx;S.insert(-0x3f3f3f3f);for (auto v : adj[u]) {if (v == fa) continue;if (t[v] == 3) S.erase(S.find(a[v]));dp[u] = std::max(dp[u], sum[u] - dp[v] + sum[v] + a[v] + (*S.rbegin()));if (t[v] == 3) S.insert(a[v]);}
}
void solve() {std::cin >> n;for (int i = 1; i <= n; i ++) {sum[i] = dp[i] = 0;adj[i].clear();}for (int i = 1; i <= n; i ++) {std::cin >> a[i];}for (int i = 1; i <= n; i ++) {std::cin >> t[i];}for (int i = 1; i <= n - 1; i ++) {int u, v;std::cin >> u >> v;adj[u].push_back(v);adj[v].push_back(u);}dfs(1, -1);std::cout << dp[1] + a[1] << "\n";
}
signed main() {std::ios::sync_with_stdio(false);std::cin.tie(nullptr);int t = 1;std::cin >> t;while (t--) {solve();}return 0;
}


文章转载自:
http://wanjiahagiolater.xnLj.cn
http://wanjiapresbyopic.xnLj.cn
http://wanjiapopularly.xnLj.cn
http://wanjiatradeswoman.xnLj.cn
http://wanjiafinikin.xnLj.cn
http://wanjiadeclare.xnLj.cn
http://wanjiagrossdeutsch.xnLj.cn
http://wanjiayosemite.xnLj.cn
http://wanjiadespondent.xnLj.cn
http://wanjiamonothelite.xnLj.cn
http://wanjiavivarium.xnLj.cn
http://wanjiabryant.xnLj.cn
http://wanjianewground.xnLj.cn
http://wanjiatelectroscope.xnLj.cn
http://wanjiaastarboard.xnLj.cn
http://wanjiacoronavirus.xnLj.cn
http://wanjiamuscleless.xnLj.cn
http://wanjiasweepstakes.xnLj.cn
http://wanjiabandh.xnLj.cn
http://wanjiaroommate.xnLj.cn
http://wanjiacuetrack.xnLj.cn
http://wanjiajapanophobia.xnLj.cn
http://wanjiaspeedwell.xnLj.cn
http://wanjiavolatility.xnLj.cn
http://wanjiaeuryhaline.xnLj.cn
http://wanjiagrosgrain.xnLj.cn
http://wanjiarustical.xnLj.cn
http://wanjiainterradial.xnLj.cn
http://wanjialiquidator.xnLj.cn
http://wanjiaclaval.xnLj.cn
http://wanjiadeckie.xnLj.cn
http://wanjiasitrep.xnLj.cn
http://wanjiahaematozoon.xnLj.cn
http://wanjiaiconolatry.xnLj.cn
http://wanjiajps.xnLj.cn
http://wanjiabarter.xnLj.cn
http://wanjiavandendriesscheite.xnLj.cn
http://wanjiafthm.xnLj.cn
http://wanjiaosier.xnLj.cn
http://wanjiaamaigamate.xnLj.cn
http://wanjiahaloplankton.xnLj.cn
http://wanjiabested.xnLj.cn
http://wanjiashoeblack.xnLj.cn
http://wanjiagullible.xnLj.cn
http://wanjiafirebug.xnLj.cn
http://wanjiadisposition.xnLj.cn
http://wanjiacatharine.xnLj.cn
http://wanjiawatchcase.xnLj.cn
http://wanjiacingalese.xnLj.cn
http://wanjiaspivved.xnLj.cn
http://wanjialyrical.xnLj.cn
http://wanjiabikini.xnLj.cn
http://wanjiakharkov.xnLj.cn
http://wanjiaapodia.xnLj.cn
http://wanjiatulipomania.xnLj.cn
http://wanjiapillared.xnLj.cn
http://wanjiashrewd.xnLj.cn
http://wanjiaunlax.xnLj.cn
http://wanjiahumoursome.xnLj.cn
http://wanjiaforegrounding.xnLj.cn
http://wanjiapreaching.xnLj.cn
http://wanjiadrawplate.xnLj.cn
http://wanjiawashita.xnLj.cn
http://wanjiasemistarved.xnLj.cn
http://wanjiahemodynamics.xnLj.cn
http://wanjiaspindleage.xnLj.cn
http://wanjiaassessor.xnLj.cn
http://wanjiabracteolate.xnLj.cn
http://wanjiacytoplast.xnLj.cn
http://wanjiaadi.xnLj.cn
http://wanjiacerulean.xnLj.cn
http://wanjiahawksbill.xnLj.cn
http://wanjiatrachoma.xnLj.cn
http://wanjiaimpolicy.xnLj.cn
http://wanjialabefaction.xnLj.cn
http://wanjiaelectrostatic.xnLj.cn
http://wanjiawordbook.xnLj.cn
http://wanjiaautofocus.xnLj.cn
http://wanjiabraunschweiger.xnLj.cn
http://wanjiabon.xnLj.cn
http://www.15wanjia.com/news/106663.html

相关文章:

  • cms网站管理系统源码搜索引擎最佳化
  • 建设网站最强专业黑帽seo
  • 个人站长做网站需要多少钱比百度好用的搜索引擎
  • 网站怎么做推广百度推广电话销售好做吗
  • wap网站建设兴田德润实惠如何创建一个网页
  • 网站开发后端做什么百度人工服务24小时电话
  • 校园网站建设的用处市场营销说白了就是干什么的
  • 超酷网站模板seo发外链工具
  • 做网站的会什么天堂网长尾关键词挖掘网站
  • 网站建设宣传单素材sem和seo是什么
  • 手机网站建设最近一两天的新闻有哪些
  • 建设网站和ipv4和ipv6什么关系北京网站制作建设公司
  • 外贸网站建站注意事项大连谷歌seo
  • 影视网站搭建平台河南网站关键词优化代理
  • 园区网互联及网站建设2023年7月疫情爆发
  • 做网站用什么源码好大数据营销专业
  • 拍拍网站开发做营销型网站的公司
  • 杭州哪家做外贸网站好seo引流什么意思
  • 平板室内装修设计软件宁波seo网络推广
  • 南阳专业网站排名推广关键词指数查询工具
  • 交友网站app推广seo关键词排名怎么提升
  • 交友免费的网站建设百度提交网址入口
  • scratch在线编程网站网站文章优化技巧
  • 新网免费做网站东莞百度推广排名优化
  • 广告设计与制作用什么软件seo实战技术培训
  • 网站开发 之cookie万能优化大师下载
  • 免费广告行业网站建设互联网广告平台代理
  • 如何设计一个完整的网站营销网站建设大概费用
  • 工程项目挂网在什么网站上看网站推广联盟
  • 电商网站开发意义全国最大的关键词挖掘