The definition of integer average is the highest smaller integer if average is floating point number. Also the condition if that they can not use any typecasting or any datatype other than int. Example: a = 4, b = 5, avg = 4 a = 4, b = 6, avg = 5 a = -4, b = -6, avg = -5 a = 4, b = -5, avg = -1 a = -4, b = -5, avg = -5
-9%2 == -1 不是1, 所以负数%2==1不是奇数判定标准。但是偶数标准仍是%2 == 0
1 package FindIntegerAverage; 2 3 public class Solution { 4 public int aver(int a, int b) { 5 if ((a+b)%2 == 0)return (int)(a+b)/2; 6 else return (int)(a+b-1)/2; 7 } 8 9 /** 10 * @param args 11 */ 12 public static void main(String[] args) { 13 // TODO Auto-generated method stub 14 Solution sol = new Solution(); 15 int res = sol.aver(-4, -5); 16 System.out.print(res); 17 } 18 19 }
时间: 2024-10-27 13:15:03