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

网站内容编辑怎么做网站内部优化有哪些内容

网站内容编辑怎么做,网站内部优化有哪些内容,南宁企业建站模板,建材在哪些网站做感觉这是一道值得收藏的题目。 比赛的时候这道题看到后没有立即想到思路,虽然不算很难,但还是比较初见杀的。 比较常见的思路是采用树形dp,用 d p [ x ] [ y ] dp[x][y] dp[x][y]表示点 x x x的子树中选择了和为 y y y的联通块的方案数。 …

在这里插入图片描述
感觉这是一道值得收藏的题目。

比赛的时候这道题看到后没有立即想到思路,虽然不算很难,但还是比较初见杀的。

比较常见的思路是采用树形dp,用 d p [ x ] [ y ] dp[x][y] dp[x][y]表示点 x x x的子树中选择了和为 y y y的联通块的方案数。

这样将两个合并是

d p ′ [ x ] [ t ] = ∑ i = 0 t d p [ x ] [ i ] × d p [ y ] [ t − i ] dp'[x][t]=\sum_{i=0}^tdp[x][i]\times dp[y][t-i] dp[x][t]=i=0tdp[x][i]×dp[y][ti]

这样的转移是 O ( n log ⁡ n ) O(n\log n) O(nlogn)的。

感觉树形dp主要的问题是不能很好的利用只有一个连通块的条件。

后面想着如果是一个连通块,直接用在dfs序上面找不选的点就好。

d p [ i ] [ j ] dp[i][j] dp[i][j]表示在dfs序为 i i i的点上和为 j j j的方案数(只是到 i i i并没有决定 i i i选不选)

那么就有两种方案,如果选择 i i i,就把 d p [ i ] dp[i] dp[i]加到 d p [ i + 1 ] dp[i+1] dp[i+1];如果不选择 i i i,那么其子树就不用再去遍历,直接给 d p [ i + s i z [ i ] ] dp[i+siz[i]] dp[i+siz[i]]加上 d p [ i ] dp[i] dp[i]即可。

#include <bits/stdc++.h>
#define ll long long
using namespace std;const int N = 5e3 + 10, mod = 1e9 + 7;int n, m, a[N], f[N][N];
vector<int> e[N];
int z, pos[N], L[N], R[N];void dfs(int x, int fa) {L[x] = ++z;pos[z] = x;for (int y : e[x]) {if (y == fa) continue;dfs(y, x);}R[x] = z;
}void ad(int &x, int y) {x = x + y >= mod ? x + y - mod : x + y;
}void solve() {cin >> n >> m;memset(f, 0, sizeof(f));for (int i = 1; i <= n; i++) {cin >> a[i];e[i].clear();}for (int i = 1; i < n; i++) {int x, y;cin >> x >> y;e[x].push_back(y);e[y].push_back(x);}z = 0; dfs(1, 0);f[1][0] = 1;for (int i = 1; i <= n; i++) {//选择for (int j = 0; j + a[pos[i]] <= m; j++) {ad(f[i + 1][j + a[pos[i]]], f[i][j]);}//不选择if (i > 1) {int k = R[pos[i]] + 1;for (int j = 0; j <= m; j++) {ad(f[k][j], f[i][j]);}}}int ans = 0;for (int i = 0; i <= m; i++) {ad(ans, f[n + 1][i]);}cout << ans << "\n";
}int main() {// freopen("in.in", "r", stdin);ios::sync_with_stdio(false);cin.tie(nullptr);int T; cin >> T;while (T--) {solve();}
}
http://www.dtcms.com/wzjs/274295.html

相关文章:

  • 网站的建设公司哪个好怎样做品牌推广
  • 临沂网站建设厂家什么是信息流广告
  • 用织梦做网站调用乱码竞价托管外包
  • 编辑html厦门seo结算
  • 兰州疫情防控最新政策品牌seo如何优化
  • 东营网站排名三叶草gy5987
  • 石家庄造价工程信息网seo是搜索引擎优化
  • 网站建设各模块功能简述青岛网站seo服务
  • 网站301跳转怎么做的百度产品推广
  • 张家界市建设局网站人工智能的关键词
  • 淘宝网站可信度状况及建设策略在线观看的seo综合查询
  • 正常成都建设网站什么软件可以发帖子做推广
  • 门网站制作网站制作和推广
  • 西安网站建设网站推广学it一年的学费大概是多少
  • 天津市政府网站建设管理办法自己怎么做网址开网站
  • 建设外贸网站注意什么免费seo视频教学
  • 微信分享的h5网站开发免费检测网站seo
  • 家装设计师网站seo技术是什么
  • 自己做的网站出现iis7东营优化路网
  • 校园推广方案经典范文seo网站关键词优化工具
  • 做兼职网站赚钱吗盘搜搜
  • 青岛做网络直播的网站网站权重查询
  • 深圳wap网站建设编程培训机构加盟哪家好
  • 优秀的网站首页布局搜索引擎优化方法有哪几种
  • 网站架构设计师就业指导南宁百度seo软件
  • 太原网络推广网站杭州百度推广开户
  • 网站布局案例建个网站需要多少钱?
  • 东莞商城网站建设价格seo网站推广多少钱
  • wordpress 插件语言南宁seo专员
  • 网站建设计入什么会计科目数据分析师报考官网