This commit is contained in:
shenjack 2024-06-24 09:13:43 +08:00
parent 4a221f92fa
commit 5e9a79f868
Signed by: shenjack
GPG Key ID: 7B1134A979775551

View File

@ -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, 15 去
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),
)
}
},
14 => unsafe { 14 => unsafe {
// 下面这一行应该只在 14 != 0 时运行 // 判断 15
// 我试试优化成 *[14] / [14] 看看咋样 *self.skl_freq.get_unchecked_mut(14) <<= 1;
*self.skl_freq.get_unchecked_mut(14) += min( if *self.skl_freq.get_unchecked(15) != 0 {
min(*self.name_base.get_unchecked(60), *self.name_base.get_unchecked(61)), *self.skl_freq.get_unchecked_mut(15) += min(
*self.skl_freq.get_unchecked(14), min(*self.name_base.get_unchecked(62), *self.name_base.get_unchecked(63)),
) * self.skl_freq.get_unchecked(14) *self.skl_freq.get_unchecked(15),
/ self.skl_freq.get_unchecked(14); )
}
}, },
15 => unsafe { 15 => unsafe {
*self.skl_freq.get_unchecked_mut(15) += min( // 判断 14
min(*self.name_base.get_unchecked(62), *self.name_base.get_unchecked(63)), *self.skl_freq.get_unchecked_mut(15) <<= 1;
*self.skl_freq.get_unchecked(15), if *self.skl_freq.get_unchecked(14) != 0 {
) * self.skl_freq.get_unchecked(15) *self.skl_freq.get_unchecked_mut(14) += min(
/ self.skl_freq.get_unchecked(15); min(*self.name_base.get_unchecked(60), *self.name_base.get_unchecked(61)),
*self.skl_freq.get_unchecked(14),
)
}
}, },
_ => unsafe { x => unsafe {
*self.skl_freq.get_unchecked_mut(last as usize) <<= 1; *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),
)
}
}, },
} }
} }