题目:
编写一个方法,找出两个数字a和b中最大的那一个。不得使用if-else或其他比较运算符。
示例:
输入: a = 1, b = 2
输出: 2
解题方法:
这道题我也不会做,所以特意记录一下,就两点:
- 将输入数据转成long类型,防止溢出;
- 数学公式:max(a,b)=(|a-b|+(a+b))/2。
代码和结果:
class Solution {
public:
int maximum(int a, int b) {
long c=a;
long d=b;
return (abs(c-d)+c+d)/2;
}
};
运行结果:

网友评论