Java超时求助(71分)
查看原帖
Java超时求助(71分)
1168280
Harada7楼主2024/1/29 11:35
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        /*输入两行,第一行为x1,x2,表示x的取值范围,第二行为y1,y2,表示y的取值范围
        * 判断下,y相乘是否超出int类型可以表示得范围[-2147483648,2147483647],超出则输出long long int,否则输出int
        * 也就是要是在x1-x2,y1-y2的范围里面,xy相乘,每一组数据都不超过,才能输出*/
        Scanner input = new Scanner(System.in);
        int x1,x2,y1,y2;
        x1=input.nextInt();
        x2=input.nextInt();
        y1=input.nextInt();
        y2=input.nextInt();
        long sum=0;
        boolean flag = true;
        for (long x = x1; x <=x2 ; x++) {
            for (long y = y1; y <=y2 ; y++) {
                sum=x*y;
                if (sum<Integer.MIN_VALUE||sum>Integer.MAX_VALUE){
                    System.out.println("long long int");
                    flag=false;
                    break;
                }
            }
            if (!flag)break;
        }
        if (!(sum<Integer.MIN_VALUE||sum>Integer.MAX_VALUE)){
            System.out.println("int");
        }
    }
}

2024/1/29 11:35
加载中...