Compare commits
2 Commits
4a221f92fa
...
421ac1a566
Author | SHA1 | Date | |
---|---|---|---|
421ac1a566 | |||
5e9a79f868 |
@ -542,26 +542,77 @@ impl Namer {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// match last {
|
||||||
|
// -1 => (),
|
||||||
|
// 14 => unsafe {
|
||||||
|
// // 下面这一行应该只在 14 != 0 时运行
|
||||||
|
// // 我试试优化成 *[14] / [14] 看看咋样
|
||||||
|
// *self.skl_freq.get_unchecked_mut(14) += min(
|
||||||
|
// min(*self.name_base.get_unchecked(60), *self.name_base.get_unchecked(61)),
|
||||||
|
// *self.skl_freq.get_unchecked(14),
|
||||||
|
// ) * self.skl_freq.get_unchecked(14)
|
||||||
|
// / self.skl_freq.get_unchecked(14);
|
||||||
|
// },
|
||||||
|
// 15 => unsafe {
|
||||||
|
// if self.skl_freq.get_unchecked(15) != 0 { *self.skl_freq.get_unchecked_mut(15) += min(
|
||||||
|
// min(*self.name_base.get_unchecked(62), *self.name_base.get_unchecked(63)),
|
||||||
|
// *self.skl_freq.get_unchecked(15))}
|
||||||
|
// );
|
||||||
|
// },
|
||||||
|
// _ => unsafe {
|
||||||
|
// *self.skl_freq.get_unchecked_mut(last as usize) <<= 1;
|
||||||
|
// },
|
||||||
|
// }
|
||||||
match last {
|
match last {
|
||||||
-1 => (),
|
-1 => unsafe {
|
||||||
14 => unsafe {
|
// 判断 14, 15 去
|
||||||
// 下面这一行应该只在 14 != 0 时运行
|
if *self.skl_freq.get_unchecked(14) != 0 {
|
||||||
// 我试试优化成 *[14] / [14] 看看咋样
|
|
||||||
*self.skl_freq.get_unchecked_mut(14) += min(
|
*self.skl_freq.get_unchecked_mut(14) += min(
|
||||||
min(*self.name_base.get_unchecked(60), *self.name_base.get_unchecked(61)),
|
min(*self.name_base.get_unchecked(60), *self.name_base.get_unchecked(61)),
|
||||||
*self.skl_freq.get_unchecked(14),
|
*self.skl_freq.get_unchecked(14),
|
||||||
) * self.skl_freq.get_unchecked(14)
|
)
|
||||||
/ self.skl_freq.get_unchecked(14);
|
}
|
||||||
},
|
if *self.skl_freq.get_unchecked(15) != 0 {
|
||||||
15 => unsafe {
|
|
||||||
*self.skl_freq.get_unchecked_mut(15) += min(
|
*self.skl_freq.get_unchecked_mut(15) += min(
|
||||||
min(*self.name_base.get_unchecked(62), *self.name_base.get_unchecked(63)),
|
min(*self.name_base.get_unchecked(62), *self.name_base.get_unchecked(63)),
|
||||||
*self.skl_freq.get_unchecked(15),
|
*self.skl_freq.get_unchecked(15),
|
||||||
) * self.skl_freq.get_unchecked(15)
|
)
|
||||||
/ self.skl_freq.get_unchecked(15);
|
}
|
||||||
},
|
},
|
||||||
_ => unsafe {
|
14 => unsafe {
|
||||||
*self.skl_freq.get_unchecked_mut(last as usize) <<= 1;
|
// 判断 15
|
||||||
|
*self.skl_freq.get_unchecked_mut(14) <<= 1;
|
||||||
|
if *self.skl_freq.get_unchecked(15) != 0 {
|
||||||
|
*self.skl_freq.get_unchecked_mut(15) += min(
|
||||||
|
min(*self.name_base.get_unchecked(62), *self.name_base.get_unchecked(63)),
|
||||||
|
*self.skl_freq.get_unchecked(15),
|
||||||
|
)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
15 => unsafe {
|
||||||
|
// 判断 14
|
||||||
|
*self.skl_freq.get_unchecked_mut(15) <<= 1;
|
||||||
|
if *self.skl_freq.get_unchecked(14) != 0 {
|
||||||
|
*self.skl_freq.get_unchecked_mut(14) += min(
|
||||||
|
min(*self.name_base.get_unchecked(60), *self.name_base.get_unchecked(61)),
|
||||||
|
*self.skl_freq.get_unchecked(14),
|
||||||
|
)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
x => unsafe {
|
||||||
|
*self.skl_freq.get_unchecked_mut(x as usize) <<= 1;
|
||||||
|
if *self.skl_freq.get_unchecked(14) != 0 {
|
||||||
|
*self.skl_freq.get_unchecked_mut(14) += min(
|
||||||
|
min(*self.name_base.get_unchecked(60), *self.name_base.get_unchecked(61)),
|
||||||
|
*self.skl_freq.get_unchecked(14),
|
||||||
|
)
|
||||||
|
}
|
||||||
|
if *self.skl_freq.get_unchecked(15) != 0 {
|
||||||
|
*self.skl_freq.get_unchecked_mut(15) += min(
|
||||||
|
min(*self.name_base.get_unchecked(62), *self.name_base.get_unchecked(63)),
|
||||||
|
*self.skl_freq.get_unchecked(15),
|
||||||
|
)
|
||||||
|
}
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -768,10 +819,10 @@ mod test {
|
|||||||
fn update_name_test() {
|
fn update_name_test() {
|
||||||
// 先创建一个正常的 namer
|
// 先创建一个正常的 namer
|
||||||
// 然后更新名字
|
// 然后更新名字
|
||||||
let team = TeamNamer::new_unchecked("x");
|
let team = TeamNamer::new_unchecked("shenjack");
|
||||||
let mut namer = Namer::new_from_team_namer_unchecked(&team, "x");
|
let mut namer = Namer::new_from_team_namer_unchecked(&team, "x");
|
||||||
|
|
||||||
let update_name = "k";
|
let update_name = "一一一丑堀㴁";
|
||||||
namer.replace_name(&team, update_name);
|
namer.replace_name(&team, update_name);
|
||||||
|
|
||||||
let mut none_update_name = Namer::new_from_team_namer_unchecked(&team, update_name);
|
let mut none_update_name = Namer::new_from_team_namer_unchecked(&team, update_name);
|
||||||
|
Loading…
Reference in New Issue
Block a user