这样不知道可行不? public static int getAverage(int[] arrays) { int length = arrays.length; int average = 0; int r = 0; for (int i = 0; i < length; i++) { //累加整数部分平均数 average += arrays[i] / length; //余数部分处理 int curR = arrays[i] % length; if(r == 0){ r = curR; } else { //通过先去掉length,来解决相加溢出问题 int t = r > 0 ? r - length + curR : r + length + curR; if(Math.abs(t) > 0){ average = r > 0 ? average + 1 : average - 1; r=t; } else { r+=curR; } } } return average; }
点赞 1

相关推荐

头像
不愿透露姓名的神秘牛友
05-23 10:24
已编辑
趵突泉实验室 研发岗 12➕4
点赞 评论 收藏
分享
比亚迪商研院 f1级 12k第二年会降薪
点赞 评论 收藏
分享
牛客网
牛客企业服务