93,求助

P1401 [入门赛 #18] 禁止在 int 乘 int 时不开 long long

<https://www.luogu.com.cn/problem/B3906> B3906能AC但这个WA了7个点
by wish_light @ 2023-12-21 21:17:21


$x \times y$ 应该上下界都判一下吧。 HACK: ``` -2147483647 1 1 2147483647 ```
by fcy20180201 @ 2023-12-21 21:23:33


@[wish_light](/user/1223392)
by fcy20180201 @ 2023-12-21 21:24:48


@[fcy20180201](/user/866154) AC了谢谢
by wish_light @ 2023-12-21 21:30:54


简洁的写法 @[wish_light](/user/1223392) ```cpp #include<bits/stdc++.h> using namespace std; int main(){ long long x,y,z,w; scanf("%lld%lld%lld%lld",&x,&y,&z,&w); long long ans=x*z,ans2=y*w,ans3=x*w,ans4=y*z; if(ans<INT_MIN||ans2<INT_MIN||ans3<INT_MIN||ans4<INT_MIN)printf("long long "); else if(ans>INT_MAX||ans2>INT_MAX||ans3>INT_MAX||ans4>INT_MAX)printf("long long "); printf("int"); return 0; } ```
by bcbgszyzh @ 2023-12-23 11:51:28


|