zoukankan
html css js c++ java
最近公共祖先模板(未完待续)
最近公共祖先题目(持续更新)
(1.)
(Distance)
(Query)
(2.)
求和
倍增法求最近公共祖先
$View$ $Code$
```cpp #include
using namespace std; inline int read() { int ret=0,f=1; char ch=getchar(); while(ch>'9'||ch<'0') { if(ch=='-') f=-1; ch=getchar(); } while(ch>='0'&&ch<='9') { ret=(ret<<1)+(ret<<3)+ch-'0'; ch=getchar(); } return ret*f; } int n,m,s,t,x,y; int f[500005][20],d[500005]; int num,head[1000005]; queue
q; struct edge { int ver,nxt; }e[1000005]; inline void adde(int u,int v) { e[++num].ver=v; e[num].nxt=head[u]; head[u]=num; } inline void bfs() { d[s]=1; q.push(s); while(!q.empty()) { int x=q.front(); q.pop(); for(register int i=head[x];i;i=e[i].nxt) { int y=e[i].ver; if(d[y]) continue; d[y]=d[x]+1; f[y][0]=x; for(register int j=1;j<=t;j++) f[y][j]=f[f[y][j-1]][j-1]; q.push(y); } } } inline int lca(int x,int y) { if(d[x]
=0;i--) if(d[f[x][i]]>=d[y]) x=f[x][i]; if(x==y) return y; for(register int i=t;i>=0;i--) { if(f[x][i]!=f[y][i]) { x=f[x][i]; y=f[y][i]; } } return f[x][0]; } int main() { n=read(); m=read(); s=read(); t=(int)(log(n)/log(2))+1; for(register int i=1;i
查看全文
相关阅读:
cocos代码研究(20)Widget子类LoadingBar学习笔记
cocos代码研究(19)Widget子类ImageView学习笔记
cocos代码研究(18)Widget子类Slider学习笔记
cocos代码研究(17)Widget子类RadioButtonGroup学习笔记
cocos代码研究(16)Widget子类RadioButton学习笔记
cocos代码研究(15)Widget子类CheckBox学习笔记
cocos代码研究(14)Widget子类Button学习笔记
LeetCode:路径总和【112】
LeetCode:平衡二叉树【110】
LeetCode:二叉树的层次遍历||【107】
原文地址:https://www.cnblogs.com/Peter0701/p/11728629.html
最新文章
Asp.Net_Wcf跟Wpf的区别
Asp.Net_HttpModule的应用
Asp.Net_Mvc3.5语法_<%%>的用法
Asp.Net_序列化、反序列化
Html_div圆角
Redis简介与Memcached的比较
Js_获取浏览器等高宽
JQ_下雪特效
CentOS 7最小化安装后找不到‘ifconfig’命令——修复小提示
MySQL 5.7 SYS系统SCHEMA
热门文章
MySQL 获得当前日期时间 函数
A Mysql backup script
mysql 利用binlog增量备份,还原实例
分享:shell去掉linux配置文件的注释行
rsync 只同步指定类型的文件
Navicat Premium (patch and keygen)
mysql delete数据 空间占用不减少的解决办法
WIN7(VISTA)系统无法上网问题排查方法
cocos代码研究(21)Widget子类TextField学习笔记
cocos代码研究(21)Widget子类Text,TextAtlas,TextBMFont学习笔记
Copyright © 2011-2022 走看看