对于WA,我的态度:
如果能找到一组规模不大的程序出错的样例,自己调,否则写rand和暴力做hack数据,如果无法构造hack数据就重写,直到AC
by WaReTle @ 2020-04-03 23:22:07
@[Andy_2006](/user/261262) 自己调吧
by WaReTle @ 2020-04-03 23:23:36
@[Andy_2006](/user/261262) ~~不是猪国杀就好~~
by WaReTle @ 2020-04-03 23:25:01
@[Andy_2006](/user/261262)
没仔细看,但是您 dfs 中第二行
```cpp
d[x]=d[fa+1];
```
应为
```cpp
d[x]=d[fa]+1;
```
吧?
by stoorz @ 2020-04-03 23:27:50
中国好哥哥Orz
by Andysun06 @ 2020-04-03 23:33:26
中国好哥哥Orz
by _Z_M_R @ 2020-04-03 23:42:23
中国好哥哥Orz
by PrincessQi @ 2020-04-03 23:58:11
至少两个错误吧。
第一个:
```cpp
d[x]=d[fa+1];
```
应当改为:
```cpp
d[x]=d[fa]+1;
```
第二个:
```cpp
int getlca(int a,int b)
{
if(d[a]>d[b])
{
swap(a,b);
}
while(d[a]<d[b])
{
b=p[b][lg[d[b]-d[a]]-1];
}
if(a==b) return a;//就是这里加了一句话!!!
for(int i=lg[a];i>=0;i--)
{
if(p[a][i]!=p[b][i])
{
a=p[a][i];
b=p[b][i];
}
}
return p[a][0];
}
```
by _LPF_ @ 2020-04-04 00:31:46
@[Dr冯](/user/104662) 中国好哥哥是什么梗
by do_while_true @ 2020-04-04 00:54:40