是UB吧?
by SmokedFish @ 2020-07-05 21:44:18
@[DS优化线段树](/user/210129) 然而我在洛谷IDE上面开O2可以得到 `(1<<-1)==0` 和 `(8<<-1)==4`
by _5011_ @ 2020-07-05 21:46:09
当然不开O2得到的也是一样的结果
by _5011_ @ 2020-07-05 21:47:11
@[Zephyr_](/user/91127) 稍等哈
by SmokedFish @ 2020-07-05 21:47:14
@[Zephyr_](/user/91127) 显然
```
ub.cpp:27:13: warning: shift count is negative [-Wshift-count-negative]
cout<<(1<<-1)<<endl;
^ ~~
1 warning generated.
-517883936
```
by 蒟蒻王孑 @ 2020-07-05 21:47:17
开O2结果一样不代表不是UB
by LanrTabe @ 2020-07-05 21:48:07
可能不是?
by Spasmodic @ 2020-07-05 21:48:15
@[pengyule](/user/300078) 过分了
by SmokedFish @ 2020-07-05 21:48:51
爪巴
by SmokedFish @ 2020-07-05 21:49:04
不过我感觉没啥问题……
算了我加特判去了
by _5011_ @ 2020-07-05 21:49:22