已AC但有疑问

P3810 【模板】三维偏序(陌上花开)

100分代码中也有 ``` ll i=l; //此处省略中间部分 ``` 的部分
by 云雷心柠檬听 @ 2024-02-08 20:05:02


有可能(你谷在线编译器)是在执行第3行的`for(i=l;i<=r;i++) f[i]=md[i];`时编译器看到第1行的`ll i=l;`,认为这个初始化(第三行的`i=l`)没必要给省略了 大概
by Forgotten_0x1328FB6 @ 2024-02-08 20:06:10


@[云雷心柠檬听](/user/305296) 支持
by ycz0618 @ 2024-02-08 20:15:20


@[Forgotten_0x1328FB6](/user/89343) 但是加入我在2&3行之间加入 ``` for(i=l;i<=mid;i++) cout<<"\n"; ``` 会输出空行(会WA),假如优化掉了`i=l`应该不会输出空行(因为事实上在中间过程中最后i会等于mid+1)
by 云雷心柠檬听 @ 2024-02-08 20:19:34


@[ycz0618](/user/946034) ?
by 云雷心柠檬听 @ 2024-02-08 20:19:59


@[云雷心柠檬听](/user/305296) 加输出一个空行,编译器就不会认为`i=l`是无效语句了,就不会将其优化掉
by Forgotten_0x1328FB6 @ 2024-02-08 20:25:33


@[云雷心柠檬听](/user/305296) 这两份代码区别显然不小,我在不动你上面指出的地方的情况下把 60pts 的改对了,所以找找其他地方的问题吧
by yinhee @ 2024-02-08 20:26:42


> 但是~~加入~~**假如**我在2&3行之间加入
by 云雷心柠檬听 @ 2024-02-08 20:27:28


@[yinhee](/user/578590) 啊我再看看
by 云雷心柠檬听 @ 2024-02-08 20:28:05


确实不是UB/hanx
by Y2y7m @ 2024-02-08 20:33:45


| 下一页