三个数乘积

最大乘积

http://www.nowcoder.com/questionTerminal/5f29c72b1ae14d92b9c3fa03a037ac5f

//确定五个数
//1.当题目中全是正数或者全是负数的时候,三个最大的相乘(max1,max2,max3)。
//2.部分正数或者部分负数的时候,正数最大数*两个负数最小数(max1*min1*min2),两个正数最大数*一个负数最大数(包含在1中)
#include<iostream>
#include<climits>
using namespace std;
int main(){
    int n,i;
    long long max1=INT_MIN,max2=INT_MIN,max3=INT_MIN;
    long long min1=INT_MAX,min2=INT_MAX;
    cin>>n;
    while(n--){
        cin>>i;
        if(i>max1){
            max3=max2;
            max2=max1;
            max1=i;
        }else if(i>max2){
            max3=max2;
            max2=i;
        }else if(i>max3){
            max3=i;
        }
        if(i<min1){
            min2=min1;
            min1=i;
        }else if(i<min2){
            min2=i;
        }
    }
    cout<<max(max1*max2*max3,max1*min1*min2)<<endl;
}
全部评论

相关推荐

面试官问:为什么不考研?该怎么回答啊😭我说现在的就业环境差到底了,还有就是我不想学数学,感觉面试官笑容都凝固了😢
DayDayNoBug的鲜芋球:我说的是“上学期其实尝试过去探索一些研究的方向,但感觉那些对我来说都没有很大的吸引力,相比起研究我可能更喜欢开发这种实践性的东西,它会让我觉得很有意思并且会为之深入进去”(虽然也不知这个回答怎么样哈哈哈哈哈哈)
点赞 评论 收藏
分享
昨天 14:58
门头沟学院 Java
点赞 评论 收藏
分享
05-12 17:28
已编辑
门头沟学院 硬件开发
ldf李鑫:不说公司名祝你以后天天遇到这样的公司
点赞 评论 收藏
分享
05-23 19:02
吉林大学 Java
点赞 评论 收藏
分享
评论
5
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务