社区讨论
此题有SAM的单log做法(小优化)
P5353树上后缀排序参与者 1已保存回复 0
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @ltyg24sd
- 此快照首次捕获于
- 2024/03/19 22:02 2 年前
- 此快照最后确认于
- 2024/03/20 13:00 2 年前
大体思路同题解区中Cyber_Tree的做法,只不过优化了树上结点对应到相同节点时暴力跳倍增的 ,即用先比较深度(长度)再比较原树上 序的方法实现排序的 比较。用 序是因为若用 存边,则儿子原先就是按编号从小到大排序的(否则再 即可)。
CPP
inline bool rule(int a,int b)
{
if(pos[a] != pos[b]) return dfn[pos[a]]<dfn[pos[b]];
if(de[a] != de[b]) return de[a]<de[b];
return ord[a]<ord[b];//dfn是parent树的dfn序,ord就是原树的
}
回复
共 0 条回复,欢迎继续交流。
正在加载回复...