阿里测开笔试8.14

只A了第一道,第二道题都读不懂,许愿能进面试啊
题目:矩阵中的每个数加上最少个d,使得矩阵的所有元素相等,如果不存在,输出-1
2 1  //输入N,d
1 2  //表示下面的矩阵为N*N
3 4
输出:3+2+1=6
2 2  //输入N,d
1 2  //表示下面的矩阵为N*N
3 4
输出:-1
import java.util.*;
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        long d = in.nextLong();
        long[] arr = new long[n*n];
        for (int i = 0; i < n*n; ++i) {
            arr[i] = in.nextLong();
        }
        Arrays.sort(arr);
        long max = arr[n*n-1];
        long count = 0L;
        boolean flag = true;
        for (int i = 0; i < n*n; ++i) {
            if ((max-arr[i])%d==0L) {
                count += (max-arr[i])/d;
            } else {
                flag = false;
                break;
            }
        }
        if (flag == true) {
            System.out.println(count);
        } else {
            System.out.println(-1);
        }
    }
}




#笔试题目##阿里巴巴#
全部评论
可以发下第二题是什么吗?
点赞 回复 分享
发布于 2020-08-14 23:41
我也是这天考的测开,为啥和你题目不一样呢
点赞 回复 分享
发布于 2020-08-20 18:49

相关推荐

找不到工作死了算了:没事的,雨英,hr肯主动告知结果已经超越大部分hr了
点赞 评论 收藏
分享
求美团让我成为团孝子:帅不帅的不知道 不过我真是拨号机小姐的狗啊
投递TP-LINK等公司10个岗位
点赞 评论 收藏
分享
评论
2
5
分享
牛客网
牛客企业服务