diff --git a/stdlib/src/ds/ac.rs b/stdlib/src/ds/ac.rs index 5f5f9fcf..7aafc7eb 100644 --- a/stdlib/src/ds/ac.rs +++ b/stdlib/src/ds/ac.rs @@ -55,7 +55,8 @@ impl AcAutomaton { // 正常的ac自动机会将剩余的失配部分也指向失配指针 // 但是这个字符集被设计为无限大,可以容纳unicode的ac自动机,所以不能这么做 // 会在匹配时顺着向上找失配指针 - self.states[*val]._fail = if self.states[self.states[u]._fail].next.contains_key(c) { + self.states[*val]._fail = if self.states[self.states[u]._fail].next.contains_key(c) + { self.states[self.states[u]._fail].next[c] } else { 0 diff --git a/stdlib/src/ds/splay.rs b/stdlib/src/ds/splay.rs index 7b957fd0..a7b8559b 100644 --- a/stdlib/src/ds/splay.rs +++ b/stdlib/src/ds/splay.rs @@ -1,4 +1,5 @@ - struct Node { + +struct Node { sons: [usize; 2], cnt: usize, sz: usize, @@ -26,8 +27,9 @@ impl Splay { } pub fn maintain(&mut self, id: usize) { - self.tree[id].sz = - self.tree[self.tree[id].sons[0]].sz + self.tree[self.tree[id].sons[1]].sz + self.tree[id].cnt; + self.tree[id].sz = self.tree[self.tree[id].sons[0]].sz + + self.tree[self.tree[id].sons[1]].sz + + self.tree[id].cnt; } pub fn is_right(&self, id: usize) -> bool {