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

台海最新消息24小时更新广州网站运营专注乐云seo

台海最新消息24小时更新,广州网站运营专注乐云seo,jsp ajax网站开发典型实例pdf,全国企业信用公示查询服务平台题干#xff1a; 有一棵n个节点的二叉树#xff0c;1为根节点#xff0c;每个节点有一个值wi。现在要选出尽量多的点。 对于任意一棵子树#xff0c;都要满足#xff1a; 如果选了根节点的话#xff0c;在这棵子树内选的其他的点都要比根节点的值大#xff1b; 如…题干   有一棵n个节点的二叉树1为根节点每个节点有一个值wi。现在要选出尽量多的点。 对于任意一棵子树都要满足 如果选了根节点的话在这棵子树内选的其他的点都要比根节点的值大 如果在左子树选了一个点在右子树中选的其他点要比它小。 输入描述: 第一行一个整数n。 第二行n个整数wi表示每个点的权值。 接下来n行每行两个整数a,b。第i2行表示第i个节点的左右儿子节点。没有为0。 n,a,b≤105,−2×109≤wi≤2×109n,a,b≤105,−2×109≤wi≤2×109 输出描述: 一行一个整数表示答案。 示例1 输入 复制 5 1 5 4 2 3 3 2 4 5 0 0 0 0 0 0 输出 复制 3 解题报告 注意依据题意需要先遍历右子树再遍历左子树。或者存权值直接存负值然后先遍历左子树再遍历右子树(即正常dfs序)也可以。 AC代码 #includecstdio #includeiostream #includealgorithm #includequeue #includectime #includemap #includevector #includeset #includestring #includecmath #includecstring #define ll long long #define pb push_back #define pm make_pair #define fi first #define se second using namespace std; const int MAX 2e5 5; int dfn[MAX],in[MAX],out[MAX]; int id,n; int a[MAX],b[MAX]; int ans[MAX]; int w[MAX]; void dfs(int cur,int root) {dfn[id] cur;in[cur] id;if(b[cur] ! 0)dfs(b[cur],cur);if(a[cur] ! 0)dfs(a[cur],cur);out[cur] id; } int DP() {int len 0;for(int i 1; iid; i) dfn[i] w[dfn[i]];ans[len] dfn[1];for(int i 2; iid; i) {if(dfn[i] ans[len]) ans[len] dfn[i];else {int pos lower_bound(ans1,anslen1,dfn[i]) - ans;ans[pos] dfn[i];}}return len; } int main() {cinn;for(int i 1; in; i) scanf(%d,wi);for(int i 1; in; i) scanf(%d%d,ai,bi);dfs(1,0);printf(%d\n,DP());return 0 ; } AC代码2 #includebits/stdc.h using namespace std; const int maxn 1e5 10; int p[maxn], q[maxn], t[maxn]; int lson[maxn], rson[maxn], cnt, len; void dfs(int rt) {if (!rt)return;dfs(lson[rt]);dfs(rson[rt]);q[cnt] p[rt]*(-1); } int main() {int n;cin n;for (int i 1; i n; i)cin p[i];for (int i 1; i n; i) {int x, y;cin x y;lson[i] x, rson[i] y;}dfs(1);t[1] q[1];for (int i 2; i n; i) {int cur lower_bound(t 1, t 1 len,q[i]) - t;t[cur] q[i];len max(len, cur);}cout len endl; } 还有一种解法Orz大佬 这个dfs序(因为是后序遍历)完了之后是对离散化后的权值求最长下降子序列也就是值是1~n求最长下降子序列 #includebits/stdc.h using namespace std; const int N100010; int W[N],A[N],h,B[N],lson[N],rson[N]; void dfs(int x){if (x0){return;}dfs(lson[x]);dfs(rson[x]);A[h]W[x]; } struct Binary_Indexed_Tree{int n,bit[N];void Add(int i,int x){while (i0){bit[i]max(bit[i],x);i-i-i;}}int Query(int i){int res0;while (in){resmax(res,bit[i]);ii-i;}return res;} }BIT; int main(){int n,i;scanf(%d,n);for (i1;in;i){scanf(%d,W[i]);B[i]W[i];}sort(B1,B1n);int tunique(B1,B1n)-B-1;for (i1;in;i){W[i]lower_bound(B1,B1t,W[i])-B;}for (i1;in;i){scanf(%d%d,lson[i],rson[i]);}dfs(1);BIT.nt;int Ans1;for (i1;in;i){int pBIT.Query(A[i]1);BIT.Add(A[i],p1);Ansmax(Ans,p1);}printf(%d\n,Ans);return 0; }
http://wiki.neutronadmin.com/news/251647/

相关文章:

  • 大气好看的网站陕西网站建设公司排名
  • 做网站的空间是啥广州市网页设计制作
  • 企业网站创建步wordpress不停刷y
  • 网站定制哪个好用阿里云怎么建网站
  • 个人网站建设方案书怎么写网站功能模块什么意思
  • 做公众号的网站模板下载吗济南网站建设内容设计
  • 怀远县建设局网站网页界面设计
  • 淄博公司做网站做百科权威网站有哪些
  • 焦作维科网站建设公司旅游网页设计页面 模板html
  • 长春建设信息网站企业网站策划实训
  • 做问卷用哪个网站wordpress 抱歉您不能访问此页面
  • 国内做文玩的网站专业团队高端网站制作
  • 专业网站制作服务北京餐饮设计公司
  • 莱州人社局网站dw网页设计全称
  • icp备案需要先建设网站么付公司制作网站费怎么做凭证
  • 高大上的企业网站欣赏wordpress的评论
  • 写方案的网站低代码建站
  • 我要找人做网站的主页怎么用手机做网站平台
  • 微商城网站建设平台合同监控做直播网站
  • 专注建设高端网站如何开网站赚钱
  • 月编程做网站wordpress 指定目录页
  • 微网站建设微网站建设移动网站推广
  • 河池环江网站建设中国铁建门户网登录入口
  • 有没有做专利导航运营的网站中建招聘官网入口
  • 高端品牌网站建设兴田德润在哪儿重庆市建设工程信息
  • 网站设计技术有哪些?wordpress连接pgsql
  • 网站的标题与关键词中美关系最新消息
  • 建设网站的具体步骤是什么百度助手app免费下载
  • 化妆品公司的网站建设的利益分析市场调研报告模板
  • 青海网站seo有哪些做排球比赛视频网站