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

我是这样做网站的米课成都网站建设有哪些

我是这样做网站的米课,成都网站建设有哪些,做一款手机app大概多少钱,网络规划设计师题库前言#xff1a; 题目链接#xff1a;P3128 [USACO15DEC] Max Flow P - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 讲解#xff1a; 这一题含金量真算高的#xff0c;包含了建树#xff08;用了图论的知识#xff09;#xff0c;求最近公共祖先#xff08;倍增法…前言 题目链接P3128 [USACO15DEC] Max Flow P - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 讲解 这一题含金量真算高的包含了建树用了图论的知识求最近公共祖先倍增法还有树上差分第一次听树上还有差分吧 这些知识有欠缺的去学习一下上面的几个小知识点吧 思路 该题我一开始的思路是虽然一个父亲有多个孩子但是孩子只有一个父亲就准备用一个fa数组或者一个map(孩子是键值)来存父子关系然后有一个book数组当输入s和t时就从t加到s用book标记每个点的经过次数后面发现这个做法不可行-----原因1给出的x和y并不确定哪个是父亲        原因2s和t也不确定哪个是父亲-------思路转变 该题实际要第四声求的是被经过最多次数的点这个题涉及到的是图或者树并且更改的是一段中的数据-------频繁更改某个区间-------想到差分-----树差分 当涉及更改某个区间时我想到了线段树但是线段树一般方便查询的是 某个区间   的相关属性如区间和但是该题最后并未涉及和区间有关的求值而是求单点的信息因此线段树这种做法可以放后面考虑 但是线段树是可以做的也有相关的题解感兴趣的和想复习线段树的大佬可以去做做 AC代码 const int N 5e4 5; const int M N - 1;int cnt; int head[N]; int fa[N][21]; int deepth[N]; int power[N]; int ans;struct EDGE {int v;int next; }EDGE[M * 2];void add(int u, int v) {cnt;EDGE[cnt].v v;EDGE[cnt].next head[u];head[u] cnt; }void dfs(int son, int father) {//第2^0个父亲就是这个父亲fa[son][0] father;//儿子深度 父亲深度 1deepth[son] deepth[father] 1;//算低2 ^ i个父亲是谁for (int i 1; (1 i)/*注意不是i 1*/ deepth[son]; i)fa[son][i] fa[fa[son][i - 1]][i -1];//公式for (int i head[son]; i; i EDGE[i].next){int v EDGE[i].v;if (v ! father)/**/dfs(v, son);} }int lca(int x, int y) {if (deepth[x] deepth[y])//要让x在y下面这样子方便后面统一处理swap(x, y);//使得x,y位于同一高度for (int i 20; i 0; i--)//注意是逆序原因:1、从上往下找比较快 2、若为顺序则越往上走找的父亲跨度越大不符合要求{if (deepth[fa[x][i]] deepth[y])x fa[x][i];}if (x y)//如果两个点已经重合return x;//找公共祖先且使得x,y位于公共祖先的下一层for (int i 20; i 0; i--){if (fa[x][i] ! fa[y][i]){x fa[x][i];y fa[y][i];}}return fa[x][0];//因为位于公共祖先的下一层所以他们的父亲就是公共祖先 }void getans(int son, int father) {for (int i head[son]; i; i EDGE[i].next){if (EDGE[i].v father)/**/continue;getans(EDGE[i].v, son);power[son] power[EDGE[i].v];}ans max(ans, power[son]); }void solve() {int n, k;cin n k;int u, v, w;//建树for (int i 0; i n - 1; i){cin u v;add(u, v);add(v, u);}dfs(1, 0);//求第2 ^ n个父亲//求公共祖先、树上差分for (int i 0; i k; i){cin u v;int togetherfather lca(u, v);power[u];power[v];power[togetherfather]--;power[fa[togetherfather][0]]--;}getans(1, 0);cout ans endl; }int main() {solve();return 0; }
http://www.hkea.cn/news/14345700/

相关文章:

  • 工程建设信息网站接口网站内容保护
  • 免费制作详情页的网站怎么做购物平台网站
  • 如何做网站推广在找产品营销推广吗wordpress 增大内存
  • 网站建设 中企动力 扬州wordpress 同步 博客园
  • 济南做网站比较好的公司吃的网站要怎么做的
  • 移动电商网站那个网站做外贸
  • 中小学网站建设方案网站优化建设宁夏
  • 云南照明网站建设网站建设必会的软件有哪些
  • asp.net网站管理系统wordpress收录前端页面插件
  • 网站品牌打造远程数据库 wordpress
  • 做二手市场类型的网站名字seo外链招聘
  • 网站建设的基本流程包括哪些百度搜不到自己的wordpress
  • 承德网站开发公司哪个网站做视频挣钱
  • 网站开发工程师的工作内容做网站云服务期
  • 外贸建网站哪家好什么是网络营销的技术
  • 网站建设外包还是自建网站建设方案平台
  • 怎么找网站啊沈阳做网站
  • 购物网站开发背景需求百度一直不收录网站
  • 手工做衣服的网站域名申请好了 要怎么做网站
  • 怎样在凡科网站做网页扁平化 网站 模板
  • 招网站建设人员各省施工备案网站
  • 微信公众号 手机网站wordpress 主查询
  • 郑州做网站公司天强科技怎么做安居客网站
  • 佛山小学网站建设用dw制作网站建设
  • 北京做网站的大公司wordpress 变成英文版
  • 副业做网站软件常德网站建设策划方案
  • 群辉做网站服务器python手机网站 jsp
  • 网站平台搭建流程wordpress精品插件
  • 建设大马路小学网站海南省建设考试网站首页
  • 空气炸锅做糕点的网站网站建站方案说明书