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

国外企业查询网站威海seo优化公司

国外企业查询网站,威海seo优化公司,如何做自己的论坛网站,怎样修改网站英文域名给定一个 n 个点 n 条边的无向图,你需要求有多少种选择图上的一个点 p 和一条边 (x,y) 的方案,使得删去 (x,y) 后图变成一棵树,且这棵树以 p 为根时每个节点的儿子个数均不超过 3。保证至少存在一种这样的方案。 Input 输入的第一行一个整数…

给定一个 n 个点 n 条边的无向图,你需要求有多少种选择图上的一个点 p 和一条边 (x,y) 的方案,使得删去 (x,y) 后图变成一棵树,且这棵树以 p 为根时每个节点的儿子个数均不超过 3。保证至少存在一种这样的方案。

Input
输入的第一行一个整数 n(2≤n≤105) 表示节点数,接下来 n 行每行两个整数 x,y(1≤x,y≤n) 描述图上的一条边。保证图中没有重边自环。

Output
输出一行一个正整数表示答案。

Input
6
1 2
1 3
1 4
1 5
1 6
2 3

Output
10

解析:

n个点n条边,所以该图就成一个环。只有将环中的一条边删去,该图才能变为一棵树。

#include <bits/stdc++.h>
using namespace std;
#define int long long 
#define ios ios::sync_with_stdio(false),cin.tie(0),cout.tie(0);
typedef pair<int,int> PII;
const int N=2e6+10;
vector <int> g[N];
map <int,int> k;
int p[N];
int d[N];
bool vis[N];
vector <PII> q;  //储存成环的边
int n;
void dfs(int u,int pa)
{p[u]=pa;vis[u]=1;for (auto v:g[u]){if (v==pa) continue;if (vis[v]==1&&q.size()==0)    //当点 v 被再次遍历时,现在已经建成一个环了,就可以回溯将环中的每条边放入队列 q 中{q.push_back({u,v});while (p[u]!=v){q.push_back({u,p[u]});u=p[u];}q.push_back({u,p[u]});}if (vis[v]==1) continue;  //走过的点,不用继续操作了,否则会死循环dfs(v,u);}
}
signed main()
{ios;cin>>n;for (int i=1;i<=n;i++){int u,v;cin>>u>>v;g[u].push_back(v);g[v].push_back(u);d[u]++;d[v]++;}for (int i=1;i<=n;i++){k[d[i]]++;  //记录度数相同的点的数量}//for (auto x:k) cout<<x.first<<" "<<x.second<<endl;dfs(1,0);//for (auto x:q) cout<<x.first<<" "<<x.second<<endl;int ans=0;for (auto x:q)   //遍历每条要删掉的边{int du=d[x.first];int dv=d[x.second];k[du]--;k[dv]--;k[du-1]++;k[dv-1]++;int res=0;bool flag=0;for (auto y:k)       //删除边后,再遍历每个点,判断能否成为根节点{int cnt=y.first;int s=y.second;if (cnt<=3) res +=s;if (cnt>=5&&s>0) flag=1;    //既当不了根节点,也当不了儿子节点}if (flag==0) ans +=res;k[du]++;  //还原k[dv]++;k[du-1]--;k[dv-1]--;}cout<<ans;return 0;
}

http://www.ds6.com.cn/news/41596.html

相关文章:

  • 黑龙江省建设集团有限公司网站seo推广小分享
  • 中国国际旅行社官网线路自己的网站怎么样推广优化
  • 怎么做简单的视频网站网络推广官网首页
  • 5ucms怎样做网站自适应百度seo建议
  • 北京西路做网站的公司seo自动工具
  • 长安区网站建设如何制作网站赚钱
  • 网站建设有那些内容b站黄页推广
  • 珠海网站制作哪家便宜超级外链发布工具
  • 长长沙网站制作app推广策略
  • 网站架构图怎么做平台优化是什么意思
  • 代做毕业设计的网站好东莞专业网站推广工具
  • 网站优化建设公司杭州网站seo推广
  • 无锡网站建设.com千锋教育怎么样
  • 桂林日月双塔seo整站优化方案
  • 网站开发哪些公司吉林seo管理平台
  • 别人的网站是怎么找到的成都seo优化推广
  • 网站建设前台与后台最新技术厦门seo优化外包公司
  • 常州微信网站建设公司金华网站推广
  • 廊坊市固安县建设局网站steam交易链接怎么看
  • 一个企业可以做多个网站吗宁波seo网站推广软件
  • 新泰网站制作公司产品推广软文300字
  • 网站开发众筹pc端百度
  • 深圳网络做网站seo网站推广软件 快排
  • 在线做头像网站域名大全免费网站
  • 温州知名网站推广软文经典案例
  • wordpress获取文章id方法漯河seo公司
  • 百度微信官网网站模板重庆网站建设公司
  • 种子汤唯梁朝伟做视频网站百度自动驾驶技术
  • 东莞市疾控中心24小时咨询电话家庭优化大师免费下载
  • 网站建设好的公司搜索引擎大全网站