是的这个人学这么久了结果不会语法
主要是下面两行代码:
fa[p[i]]=p[i+1],i++; fa[p[i]]=p[++i];
以本人不太强的水平来看感觉没区别,但实际上输出上面的是 444,下面的是 888。
具体代码是:
for(int i=1;i<=n-1;i++){ while(d[x]) x++; fa[x]=p[i]; while(i<=n-1&&!--d[p[i]]&&p[i]<x) fa[p[i]]=p[i+1],i++; //fa[p[i]]=p[++i];??? x++; }
个人感觉是有冲突什么的,但还是不懂/kk