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

开办 网站建设费 科目ui设计公司有哪些

开办 网站建设费 科目,ui设计公司有哪些,网站服务器错误403,个人做网站用哪个主机好传送门 题意#xff1a;给一棵NNN个结点的树#xff0c;你需要钦定一个根#xff0c;使得所有深度相同的点的度数相同。 N≤100000N \leq 100000N≤100000 用脑子想一想#xff0c;就是根节点直接相连的子树都长得一模一样。 如果根节点度数大于1#xff0c;我们发现它…传送门 题意给一棵NNN个结点的树你需要钦定一个根使得所有深度相同的点的度数相同。 N≤100000N \leq 100000N≤100000 用脑子想一想就是根节点直接相连的子树都长得一模一样。 如果根节点度数大于1我们发现它把整棵树均匀地分成了若干份。所以根节点是重心。 O(N)O(N)O(N)找重心检查一下 如果根节点度数等于1也就是拉了一条链下去 由于是递归的所以走到有岔路的地方就是岔路口所在子树的重心 因为两棵树合并后的重心在原来的重心的路径上所以整棵树的重心在链上。 所以沿一条链走到底就可以了。 但如果有多条路说明重心是岔路口。因为下面长得一模一样所以即使是链长度也都相同。 所以找两条长度不同的链的顶部搜一下即可。 复杂度O(N)O(N)O(N) #include iostream #include cstdio #include cstring #include cctype #include algorithm #define MAXN 100005 #define MAXM 200005 using namespace std; struct edge{int u,v;}e[MAXM]; int head[MAXN],nxt[MAXM],cnt; void addnode(int u,int v) {e[cnt](edge){u,v};nxt[cnt]head[u];head[u]cnt; } int siz[MAXN],dep[MAXN],n; void dfs(int u) {siz[u]1;for (int ihead[u];i;inxt[i])if (!dep[e[i].v]){dep[e[i].v]dep[u]1;dfs(e[i].v);siz[u]siz[e[i].v];} } int maxp[MAXN]{0x7fffffff}; int findroot() {dfs(dep[1]1);int rt0;for (int u1;un;u){for (int ihead[u];i;inxt[i])if (dep[e[i].v]dep[u]1)maxp[u]max(maxp[u],siz[e[i].v]);if (n-siz[u]maxp[u]) maxp[u]n-siz[u];if (maxp[u]maxp[rt]) rtu;}return rt; } int tmp[MAXN]; bool check(int rt) {memset(siz,0,sizeof(siz));memset(dep,0,sizeof(dep));memset(tmp,0,sizeof(tmp));dep[rt]1;dfs(rt);for (int u1;un;u){int deg0;for (int ihead[u];i;inxt[i])deg;if (!tmp[dep[u]]) tmp[dep[u]]deg;if (tmp[dep[u]]!deg) return false;}return true; } int line(int u,int f) {if (!nxt[head[u]]) return u;if (nxt[nxt[head[u]]]) return 0;int ihead[u];if (e[i].vf) inxt[i];return line(e[i].v,u); } int len[MAXN]; inline bool cmp(const int a,const int b){return dep[a]dep[b];} int main() {scanf(%d,n);for (int i1;in;i){int u,v;scanf(%d%d,u,v);addnode(u,v);addnode(v,u);}int rtfindroot();if (check(rt)){printf(%d\n,rt);return 0;}for (int ihead[rt];i;inxt[i])len[len[0]]line(e[i].v,rt);sort(len1,lenlen[0]1,cmp);if (len[1]check(len[1])){printf(%d\n,len[1]);return 0;}if (len[len[0]]check(len[len[0]])){printf(%d\n,len[len[0]]);return 0;}puts(-1);return 0; }
http://www.huolong8.cn/news/301602/

相关文章:

  • 排名好的网站建设企业内蒙古知名网站建设
  • 推荐响应式网站建设个人养老保险怎么买合适
  • 江苏省交通建设质监网站南通网站制作公司哪家好
  • 福州外贸建站高端网站建设创新
  • 广州建立网站的公司百度推广seo优化
  • 做普通网站价格刷单网站建设
  • 站长之家网站市场营销策划
  • 无锡网站制作哪里实惠安徽省建设厅官方网站各处室
  • 一个网站一年要多少钱国际网站怎么进
  • 局域网网站制作做白酒用哪个分类信息网站
  • 低代码前端开发平台网站制作及排名优化
  • 公司网站建设排名溧水城市建设招标网站
  • 网站seo优化总结做中介卖房子开哪个网站
  • 江苏建设厅网站电话多少淮南发布app下载
  • 查网站网页设计尺寸标准
  • 营销型网站建设营销型国外无版权素材网站
  • 相亲网站做期货现货贵金属的人男女做那种的的视频网站
  • 涉县移动网站建设价格厦门做个网站多少钱
  • wordpress 多站点注册猎头公司名字
  • 绍兴免费做网站书签制作方法图片大全
  • 东城东莞网站建设用eclipse编程做网站
  • 邵阳建设银行网站广告策划宣传公司
  • 福田网站建设费用预算北京做机床的公司网站
  • 建网站的费用网站建设的特点
  • 上海微网站网片钢筋生产厂家
  • 电商网站建设总结电子商城 网站开发 支持手机端
  • 广西住建局官方网站怎样理解网站建设与开发这门课
  • 无锡模板网站制作人韩剧
  • 网站框架设计模板网站建设客户确认单
  • 哈尔滨网站建设 seo洛阳网新闻中心