阅读背景:

hackerrank初级篇之Mini-Max Sum_半雨微凉

来源:互联网 

题目描述:


示例代码:

// mini_max_sum.cpp: 定义控制台应用程序的入口点。
//
//	 give sum which any four of five nums
//	 print mini and max sum
//

#include "stdafx.h"
#include <windows.h>
#include <vector>
#include <algorithm>
#include <iostream>
using namespace std;

void miniMaxNum( vector<int>arr )
{
	//方案1

	/*
    long int sum1 = 0;
    long int sum2 = 0;
    sort( arr.begin(), arr.end() );
    sum1 = arr[0] + arr[1] + arr[2] + arr[3];
    sum2 = arr[1] + arr[2] + arr[3] + arr[4];
    printf( "%ld %ld", sum1, sum2 );
    //eg:
    //256741038 623958417 467905213 714532089 938071625
    //not 2063136757 2744467344
	*/


	//方案2

	//最大值:所有数之和减去最小值元素
	//最小值:所有数之和减去最大值元素

	int small1, large;
	long int sum = 0;
	small1 = arr[0];
	large = arr[0];
	for (int arr_i = 0; arr_i < 5; arr_i++) {
		if (small1 > arr[arr_i])
			small1 = arr[arr_i];
		if (large < arr[arr_i])
			large = arr[arr_i];
		sum = sum + arr[arr_i];
	}
	printf("%ld %ld", sum - large, sum - small1);
}
int main()
{
    vector<int> arr( 5 );

    for( int arr_i = 0; arr_i < 5; arr_i++ )
    {
        cin >> arr[arr_i];
    }

    miniMaxNum( arr );
    system( "pause" );
    return 0;
}

// mini_max_sum.cpp: 定义控制台应用



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: