世界杯奖金|1994年世界杯冠军是谁|佩尼索尼克的世界杯科技先锋站|penisonic.com

篮球比赛

编程 | 100分]篮球比赛

【篮球比赛】篮球(5V5)比赛中,每个球员拥有一个战斗力,每个队伍的所有球员战斗力之和为该队伍的总体战斗力。现有10个球员准备分为两队进行训练赛,教练希望2

个队伍的战斗力差值能够尽可能的小,以达到最佳训练效果。给出10个球员的战斗力,如果你是教练,你该如何分队,才能达到最佳训练效果?请说出该分队方案下的最小

战斗力差值。

输入描述:

10个篮球队员的战斗力(整数,范围[1,10000]),战斗力之间用空格分隔,如:10987654321

不需要考虑异常输入的场景。

输出描述:

最小的战斗力差值,如:1

示例1

输入

10 9 8 7 6 5 4 3 2 1

输出

1

C++

/*

【篮球比赛】篮球(5V5)比赛中,每个球员拥有一个战斗力,每个队伍的所有球员战斗力之和为该队伍的总体战斗力。现有10个球员准备分为两队进行训练赛,教练希望2

个队伍的战斗力差值能够尽可能的小,以达到最佳训练效果。给出10个球员的战斗力,如果你是教练,你该如何分队,才能达到最佳训练效果?请说出该分队方案下的最小

战斗力差值。

输入描述:

10个篮球队员的战斗力(整数,范围[1,10000]),战斗力之间用空格分隔,如:10987654321

不需要考虑异常输入的场景。

输出描述:

最小的战斗力差值,如:1

示例1:

输入

10 9 8 7 6 5 4 3 2 1

输出

1

*/

#include

using namespace std;

void splits(string& inputs, vector& input, string pattern);

int main()

{

//暴力破解

string inputs;

getline(cin, inputs);

vector input;

string pattern = " ";

splits(inputs, input, pattern);

int mi = INT_MAX;

int sum = 0;

for (int i = 0; i < input.size();i++)

{

sum += input[i];

}

for (int i = 0; i < input.size() - 4; i++)

{

for (int j = i + 1; j < input.size() - 3; j++)

{

for (int k = j + 1; k < input.size() - 2; k++)

{

for (int m = k + 1; m < input.size() - 1; m++)

{

for (int n = m + 1; n < input.size(); n++)

{

mi = min(mi,abs(2*(input[i] + input[j] + input[k] + input[m] + input[n]) - sum));

}

}

}

}

}

cout << mi << endl;

system("pause");

return 0;

}

void splits(string& inputs, vector& input, string pattern)

{

inputs += pattern;

for (int i = 0; i < inputs.length();i++)

{

int pos = inputs.find(pattern, i);

if(pos < inputs.length())

{

string temp = inputs.substr(i,pos - i );

if(!temp.empty() && temp!= pattern)

{

input.push_back(stoi(temp));

}

}

}

}

Copyright © 2022 世界杯奖金|1994年世界杯冠军是谁|佩尼索尼克的世界杯科技先锋站|penisonic.com All Rights Reserved.