2019实习笔试编程题刷题心得

1、一定要认真读懂题目,真正理解了题目最终的需求才可思考思路;

2、思考思路时,首先就需要尽量想到最全面的测试用例。然后思考思路时,一定要逻辑清晰,理清思路,考虑到各种情况。有些需要合并和分解的地方一定要想清楚。再者就一定要计算好时间和空间复杂度以及编码的复杂度,异常较大时肯定是思路上存在问题;

3、编写代码时,命名要规范,结构要清晰,一定要提前考虑好特殊样例。

#include"iostream"
#include"stdio.h"
using namespace std;
const long long INF=21474836470;

long long firstBig,secondBig,thirdBig;
long long firstMin,secondMin;

void Classification(int num)
{
    if(num>firstBig)
    {
        thirdBig=secondBig;
        secondBig=firstBig;
        firstBig=num;
    }
    else if(num>secondBig)
    {
        thirdBig=secondBig;
        secondBig=num;
    }
    else if(num>thirdBig)
    {
        thirdBig=num;
    }
    
    if(num<firstMin)
    {
        secondMin=firstMin;
        firstMin=num;
    }
    else if(num<secondMin)
    {
        secondMin=firstMin;
    }
}
int main()
{
    freopen("in.txt","r",stdin);
    int n;
    while(cin>>n)
    {
        firstBig=-INF;
        sencondBig=-INF;
        thirdBig=-INF;
        firstMin=INF;
        secondMin=INF;
        int num;
        for(int i=0;i<n;i++)
        {
            cin>>num;
            Classification(num);
        }
        long long ans=max(firstBig*secondBig*thirdBig,max())
    }
}
View Code
原文地址:https://www.cnblogs.com/acm-jing/p/10511486.html