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

手机建设网站自适应的好处建筑公司网站功能表

手机建设网站自适应的好处,建筑公司网站功能表,html编辑器中文版,网站建设 seo sem原题链接: https://acm.hdu.edu.cn/showproblem.php?pid5927 题意: 有一颗根节点是1的树,其中有重要的点和不重要的点,重要的点需满足以下两个条件至少一个: 1.本来就是重要的点 2.是两个重要的点的最近共同祖先 有t…

原题链接:
https://acm.hdu.edu.cn/showproblem.php?pid=5927

题意:
有一颗根节点是1的树,其中有重要的点和不重要的点,重要的点需满足以下两个条件至少一个:
1.本来就是重要的点
2.是两个重要的点的最近共同祖先
有t个测试实例,对于每个测试实例:
给出结点个数n和询问次数q
对于每次询问:
给出一个数con,表示不重要的点的个数
接下来con个数是不重要的点的编号
对于每个询问,求出重要的点的个数(每次询问之间相互独立)

思路:
ans记录重要结点的个数
本来就是重要的点有n-con个
那么我们就需要检查一下不重要的点,对于每个不重要的点看看他是不是两个重要的点的最近共同祖先

对于点u,如果他的以儿子结点为根的子树中,多于两个子树里有
重要的结点,那么u就能变成重要的结点

那么我们可以先预处理好每个结点的儿子结点的个数,每个点的父节点和每个点的深度

然后再对不重要的结点按照深度从大到小的顺序排序

从最深的结点u开始遍历,如果u的有重要点的儿子结点数量超过两个,那么u就可以变成重要结点,ans++

如果变不了重要结点,说明u的有重要点的儿子结点数量要么是0要么是1,如果是0,那么u的父节点的有重要儿子结点的数量就需要-1,因为每次询问独立,那么我们需要将减掉的点给记录一下,当这次询问完毕时再复原加上

#include <bits/stdc++.h>
using namespace std;
const int maxn=1e5+5;
int d[maxn];
int book[maxn];
vector<int> edg[maxn];
int que[maxn];
int impor[maxn];
int unimpor[maxn];
int ans;
int son[maxn];
int so[maxn];
int fa[maxn];
bool cmp(int x, int y)
{return d[x]>d[y];
}
void dfs(int x, int y)
{fa[x]=y;son[y]++;son[x]=0;d[x]=d[y]+1;for(int i=0; i<(int)edg[x].size(); i++){if(edg[x][i]!=y)dfs(edg[x][i],x);}return;
}
int main()
{int t;cin>>t;int e=1; while(t--){int n;int q;scanf("%d%d", &n, &q);int i, j, x, y;for(i=0; i<n-1; i++){scanf("%d %d", &x, &y);edg[x].push_back(y);edg[y].push_back(x);	}dfs(1,0);int  m;printf("Case #%d:\n", e++);    while(q--){scanf("%d", &m);for(i=0; i<m; i++){  scanf("%d", &unimpor[i]);//不重要节点so[unimpor[i]]=son[unimpor[i]];//节点的儿子}ans=n-m;sort(unimpor, unimpor+m, cmp);for(i=0; i<m; i++){if(so[unimpor[i]]>=2)ans++;else{if(so[unimpor[i]]==0)  so[fa[unimpor[i]]]--;}}printf("%d\n", ans);}for(i=1; i<=n; i++){edg[i].clear();
//		vector<int>().swap(edg[i]);}}  
}
http://www.yayakq.cn/news/469666/

相关文章:

  • 免费网站网站制作平台管家婆crm123696
  • 网站建设算固定资产吗沈阳开发网站公司
  • 青云 wordpressseo网站设计工具
  • 在线视频直播网站建设钦州网站建设公司
  • 二手房网站制作教程百度点击软件
  • 瑞安联科网站建设龙华做网站怎么样
  • 有名的网站制作电话莘庄做网站
  • 国内优秀网站网页设计抚州网络推广
  • 汉中网站建设电话百度云资源搜索平台
  • 网站建设颜色什么类型的网站容易被百度抓取
  • 可信网站证书网页游戏人气排行榜
  • 石家庄网站app开发政务信息网站建设工作
  • 天津市建设厅网站黑糖不苦建设的网站
  • 平顶山市做网站吉林省 网站建设
  • 网站建设的分阶段步骤企业网站做app
  • 网站建设功能报价表衡阳seo优化首选
  • 做网站第三方昆明几大网站
  • 响应式网站 像素如何把网站上传到凡科
  • 网站页面app下载大全企业云服务
  • 用cms建设网站课程WordPress登录美化扁平化
  • 广州学建网站cms建站系统是什么
  • 网站不想被收录公司网站后如何更新
  • 有偿做设计的网站广西桂林商贸旅游技工学校
  • 茶山镇仿做网站网站做子页跳转到首页
  • 网站图片最大尺寸高大上网站建设公司
  • 如何在微信开发小程序小江seo
  • 网站仿静态和静态的区别网站 展示板
  • 网站建设商家南昌市做网站公司
  • 个人可以做几个网站吗淘宝了做网站卖什么好
  • 企业官网网站设计南宁公司建站模板