中点别算溢出了
补全 safe_mid:lo = 2000000000、hi = 2100000000 时,lo + hi 已经超过 int 的上限。现在的写法会溢出(结果是乱的,C++ 里有符号整数溢出属于未定义行为),改成不会溢出的写法。
(本题用 g++ -std=c++17 -O0 编译。)
补全 safe_mid:lo = 2000000000、hi = 2100000000 时,lo + hi 已经超过 int 的上限。现在的写法会溢出(结果是乱的,C++ 里有符号整数溢出属于未定义行为),改成不会溢出的写法。
(本题用 g++ -std=c++17 -O0 编译。)