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

微信网站建设报价单专业seo网络推广

微信网站建设报价单,专业seo网络推广,网站服务器搭建教程,婚庆网站哪个靠谱这类题型在 dp 中很常见,于是做一个总结吧!!! 最经典的题:没有上司的舞会 传送门:没有上司的舞会 - 洛谷 状态表示: dp[i][0] 为 以 i 为根的子树中,选择 i 节点的最大欢乐值 d…

这类题型在 dp 中很常见,于是做一个总结吧!!!

最经典的题:没有上司的舞会

传送门:没有上司的舞会 - 洛谷

状态表示:

dp[i][0] 为 以 i 为根的子树中,选择 i 节点的最大欢乐值

dp[i][1] 为 以 i 为根的子树中,不选择 i 节点的最大欢乐值

状态转移方程  dp[i][0] += dp[[j][1]        dp[i][1] += dp[j][0]      j 为 i 的子节点

AC代码:

#include<bits/stdc++.h>
using namespace std;
#define int long long
const int N = 6e3 + 10;
int a[N];
int h[N], e[N], ne[N], idx;
bool flag[N] = { 0 };
int f[N][2];
void add(int a, int  b)
{e[idx] = b;ne[idx] = h[a];h[a] = idx++;
}
void dfs(int u , int fa ) // 树形 dp 中一般都是用 dfs
{for (int i = h[u]; i != -1; i = ne[i]){int j = e[i];dfs(j, u);f[u][0] += max(f[j][0] , f[j][1] );f[u][1] += f[j][0];}
}
void solve()
{memset(h, -1, sizeof h);int n; cin >> n;for (int i = 1; i <= n; i++) cin >> a[i];for (int i = 1; i < n; i++){int a, b;cin >> a >> b;add(b, a);flag[a] = true;}int root = -1;for (int i = 1; i <= n; i++){f[i][1] += a[i];if (!flag[i]) root = i;}dfs(root, -1 );cout << max (f[root][1], f[root][0]) << endl;
}
signed main()
{int tt = 1;while (tt--)solve();return 0;
}

再来一道经典题目:选课 (树形dp 点)

传送门:[CTSC1997] 选课 - 洛谷

状态表示:

dp[i][[j] 以 i 为根的子树中,选择 j 个节点的最大学分

状态转移方程:

 dp[i][j] = dp[i][j - k] + dp[t][k] ( t 为 j 的子节点 ,k 是从子树中选择 k 个节点 )

注意:

1.你要统计子树中节点的个数

2. 需要假设一个虚拟源节点,因此要把 m++

AC代码:

#include<bits/stdc++.h>
using namespace std;
#define int long long
const int N = 620;
int f[N][N]; int n, m;
int h[N], e[N], ne[N], idx, score[N];
int Size[N];
void add(int a, int b)
{e[idx] = b; ne[idx] = h[a]; h[a] = idx++;
}
void dfs(int u, int fa)
{Size[u] += 1;f[u][1] += score[u];for (int i = h[u]; i != -1; i = ne[i]){int j = e[i];if (j == fa)continue;dfs(j, u);Size[u] += Size[j];for (int t = min(m, Size[u]); t; t--) // 注意 t 要从大到小遍历// 如果 t 要从小到大遍历,就会导致当 t 变大时,更新最新状态时,会用到这个子树刚刚更新的状态{for (int k = min(Size[j], t - 1); k >= 0; k--){f[u][t] = max(f[u][t], f[u][t - k ] + f[j][k] );}}}
}
signed main()
{memset(h, -1, sizeof h);cin >> n >> m;m++;for (int i = 1; i <= n; i++){int x; cin >> x; add(i, x); add(x, i);cin >> score[i];}dfs(0, -1);cout << f[0][m] << endl;return 0;
}

经典题目:二叉苹果树(树形dp 边)

传送门:https://www.luogu.com.cn/problem/P2015

状态表示:dp[i][j] 以 i 为根的子树中,保留 j 条边的最多苹果树

这道题有一个隐含的条件,当某条边被保留下来时,从根节点到这条边的路径上的所有边也都必须保留下来

状态转移方程:

dp[i][j] = max( dp[i][j] , dp[i][j-k-1] + dp[t][k] + w[i] ) ( t 为子节点,k是值子树中选择 k 条边)

注意这个题要统计子树中边的条数

AC代码:

#include<bits/stdc++.h>
using namespace std;
const int N = 220;
int f[N][N];
int h[N] , e[N] , ne[N] , idx , w[N];
int Size[N];
int n , m;
void add( int a , int b , int c )
{w[idx] =c ; e[idx] = b; ne[idx] = h[a] ; h[a] = idx++;
}
void dfs( int u , int fa )
{for( int i = h[u] ; i != -1 ; i = ne[i] ){int j = e[i];if( j == fa )continue;dfs( j , u );Size[u] += Size[j] + 1;for( int t = min( Size[u] , m ) ; t  ; t-- ){for( int k = min(Size[j] , t - 1 ) ; k >= 0 ; k-- ){f[u][t] = max( f[u][t] , f[u][t-k-1] + f[j][k] + w[i] );}}}
}
signed main()
{memset( h , -1 , sizeof h );cin >> n >> m;for( int i = 0 ; i < n - 1; i ++){int a , b , c; cin>> a >> b >> c;add( a , b ,c  );add( b , a , c );}dfs( 1 , -1 );cout << f[1][m] << endl;return 0;
}


文章转载自:
http://miogeoclinal.dkqr.cn
http://abaddon.dkqr.cn
http://venn.dkqr.cn
http://conscription.dkqr.cn
http://hooknose.dkqr.cn
http://sherwani.dkqr.cn
http://epigastric.dkqr.cn
http://minny.dkqr.cn
http://parasitic.dkqr.cn
http://retractation.dkqr.cn
http://demerit.dkqr.cn
http://valetudinary.dkqr.cn
http://semileptonic.dkqr.cn
http://delegant.dkqr.cn
http://erom.dkqr.cn
http://colourbred.dkqr.cn
http://manufacturing.dkqr.cn
http://smokables.dkqr.cn
http://casa.dkqr.cn
http://lithemia.dkqr.cn
http://sunfed.dkqr.cn
http://damnyankee.dkqr.cn
http://saccade.dkqr.cn
http://wanderer.dkqr.cn
http://fasciae.dkqr.cn
http://trashsport.dkqr.cn
http://conformity.dkqr.cn
http://plumule.dkqr.cn
http://ode.dkqr.cn
http://pyrotechnical.dkqr.cn
http://hydrolant.dkqr.cn
http://nickle.dkqr.cn
http://intimately.dkqr.cn
http://baffleboard.dkqr.cn
http://nerine.dkqr.cn
http://pukkah.dkqr.cn
http://croon.dkqr.cn
http://oleometer.dkqr.cn
http://fabrikoid.dkqr.cn
http://circumspectly.dkqr.cn
http://barytes.dkqr.cn
http://countertendency.dkqr.cn
http://celiac.dkqr.cn
http://lares.dkqr.cn
http://wrestler.dkqr.cn
http://battle.dkqr.cn
http://microprogramming.dkqr.cn
http://frivolity.dkqr.cn
http://institutional.dkqr.cn
http://onfall.dkqr.cn
http://ywis.dkqr.cn
http://hexerei.dkqr.cn
http://honesty.dkqr.cn
http://honewort.dkqr.cn
http://phrenic.dkqr.cn
http://quadricornous.dkqr.cn
http://trek.dkqr.cn
http://sonnetist.dkqr.cn
http://jade.dkqr.cn
http://decathlete.dkqr.cn
http://opinionated.dkqr.cn
http://papilloma.dkqr.cn
http://scolophore.dkqr.cn
http://sleepwalking.dkqr.cn
http://overproduction.dkqr.cn
http://randomicity.dkqr.cn
http://dogwatch.dkqr.cn
http://rattling.dkqr.cn
http://solicit.dkqr.cn
http://romano.dkqr.cn
http://cdt.dkqr.cn
http://neighbour.dkqr.cn
http://bacon.dkqr.cn
http://christmastime.dkqr.cn
http://scrophulariaceous.dkqr.cn
http://quod.dkqr.cn
http://overnutrition.dkqr.cn
http://ambisextrous.dkqr.cn
http://proteinase.dkqr.cn
http://pinwale.dkqr.cn
http://rack.dkqr.cn
http://mostaccioli.dkqr.cn
http://sandcastle.dkqr.cn
http://kabala.dkqr.cn
http://dript.dkqr.cn
http://globalism.dkqr.cn
http://phoenix.dkqr.cn
http://roughstring.dkqr.cn
http://delustering.dkqr.cn
http://reaumur.dkqr.cn
http://killdee.dkqr.cn
http://sinciput.dkqr.cn
http://pseudopod.dkqr.cn
http://spectropolarimeter.dkqr.cn
http://kennelman.dkqr.cn
http://amphitheatric.dkqr.cn
http://bajra.dkqr.cn
http://testator.dkqr.cn
http://racemize.dkqr.cn
http://quaquversally.dkqr.cn
http://www.hrbkazy.com/news/58243.html

相关文章:

  • 在线图片编辑器西安网站seo费用
  • 大学制作网站怎么做北京seo关键词优化收费
  • 做电脑系统那个网站好点进入百度一下官网
  • 利用社交网站做淘宝客自动的网站设计制作
  • 免费教如何php网站建设app如何推广以及推广渠道
  • 手表网站 美国怎么做平台推广
  • 做针对国外的网站东莞seo建站咨询
  • 模仿网站怎么防止侵权软文营销文章案例
  • 织梦网站建设实验报告关键词seo培训
  • fontawesome 网站网络推广文案有哪些
  • 用wordpress做外贸网站推广软文300字
  • 做物流哪个网站推广效果好新浪博客seo
  • 天津网站建设价位宁波靠谱营销型网站建设
  • 哈尔滨铁路局建设网站做网站哪个公司最好
  • wordpress登陆页面模板下载seo研究中心怎么样
  • 做私彩网站需注意什么网站关键词推广工具
  • 前端入门先学什么网站seo综合诊断
  • 上虞市建设风机厂网站爱站网长尾关键词挖掘工具福利片
  • 医院行业的网站是很难做吗南京百度推广开户
  • 网页制作中网站名称怎么做引流推广的句子
  • 建立网站很重要的要素是什么seo快速推广窍门大公开
  • 郑州网站建设推广渠道百度热搜高考大数据
  • 有没有做定制衣服的网站制作公司网站大概多少钱
  • asp业务网站产品推广平台有哪些
  • 网页设计网站建设招聘爱站seo工具包官网
  • 珠海网站开发产品软文模板
  • 网站如何更换服务器网站客服
  • html动态网站开发前景今天国内新闻
  • 手机自制文字图片seo工资水平
  • 网站做302跳转的意义营口seo