试题 A: 组队
本题总分:5 分
【问题描述】
作为篮球队教练,你需要从以下名单中选出 1 号位至 5 号位各一名球员,
组成球队的首发阵容。
每位球员担任 1 号位至 5 号位时的评分如下表所示。请你计算首发阵容 1
号位至 5 号位的评分之和最大可能是多少?
(如果你把以上文字复制到文本文件中,请务必检查复制的内容是否与文
档中的一致。在试题目录下有一个文件 team.txt,内容与上面表格中的相同,请注意第一列是编号)
【答案提交】
这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一
个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。
答案:490
[思路]
既然是一个填空题,直接暴力就得了,暴力枚举每一种情况,但注意的一点的是5个位置的编号不能重合,否则就算成了492了
思路代码:
#include <bits/stdc++.h>
using namespace std;
#define endl "\n"
int t[25],a[25],b[25],c[25],d[25],e[25];
int main()
{
for(int i=0;i<20;i++)
{
cin>>t[i]>>a[i]>>b[i]>>c[i]>>d[i]>>e[i];
}
int maxe=0;
for(int i=0;i<20;i++)
{
for(int j=0;j<20;j++)
{
if(i!=j)
{
for(int z=0;z<20;z++)
{
if(i!=z&&j!=z)
{
for(int k=0;k<20;k++)
{
if(i!=k&&j!=k&&z!=k)
{
for(int p=0;p<20;p++)
{
if(i!=p&&j!=p&&z!=p&&k!=p)
{
if(a[i]+b[j]+c[z]+d[k]+e[p]>maxe)
{
maxe=a[i]+b[j]+c[z]+d[k]+e[p];
}
}
}
}
}
}
}
}
}
}
cout<<maxe;
}