ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

第十届蓝桥杯B组省赛第A题

2019-11-14 13:59:59  阅读:292  来源: 互联网

标签:name 第十届 int 号位 some 蓝桥 num any 组省赛


试题 A: 组队 

【问题描述】 

作为篮球队教练,你需要从以下名单中选出 1 号位至 5 号位各一名球员, 组成球队的首发阵容。 

每位球员担任 1 号位至 5 号位时的评分如下表所示。请你计算首发阵容 1 号位至 5 号位的评分之和最大可能是多少? 

490

 

#include <stdio.h>

#include<iostream>

#include<string>

#include<algorithm>//sort函数包含的头文件

using namespace std;

 

       struct t{

              int a[5];

              int num;

       }some[20];

       

    int some1[20][5]={

       97       ,90       ,0       ,0,       0,

       92       ,85       ,96       ,0,       0,

       0,       0,       0       ,0       ,93,

       0       ,0,       0,       80       ,86, 

       89,       83,       97,       0,       0, 

       82,       86,       0,       0,       0, 

       0,       0,       0,       87,       90, 

       0,       97,       96,       0,       0, 

       0,       0,       89,       0,       0, 

       95,       99       ,0,       0,       0, 

       0,       0,       96,       97,       0, 

       0,       0,       0,       93,       98, 

       94,       91,       0,       0,       0, 

       0,       83,       87,       0,       0, 

       0,       0,       98,       97,       98, 

       0,       0,       0,       93,       86, 

       98,       83,       99,       98,       81, 

       93,       87,       92,       96,       98, 

       0,       0,       0,       89,       92, 

       0,       99,       96,       95,       81

       };      //原始数据

       

    int any[5][5];      //取出数据

    int name[5][5];     //取出名字

    int names[20];       //遍历名字

    int plays[5];       //遍历

    int num[5];       //职业种类啊

    int i,j,k,c,amax,temp;

    int name1,name2,name3,fractionfe1,fractionfe2,fractionfe3;

    

//int some[5][20];

bool cmp(t aa,t bb){

    return aa.a[k]>bb.a[k];

}

 

void zzz(int bbb)

{

       int i,j;

    if(bbb==5){

        amax=amax>temp?amax:temp;

        return;

    }

    for(i=0;i<5;i++){

        if(num[i]==0){

               num[i]=1;

        for(j=0;j<5;j++){

               if(names[name[i][j]]==0){

                      break;       

                      //剪枝 

               }

        }

              names[name[i][j]]=1;

              temp+=any[i][j];

           zzz(bbb+1);

              temp-=any[i][j];

        names[name[i][j]]=0;

        num[i]=0;

        }

    }

}

 

int main(){

       c=0;

    for(i=0;i<20;i++){

        names[i]=0;

    }

    for(i=0;i<5;i++){

        plays[i]=0;

        num[i]=0;

        for(j=0;j<5;j++){

            any[i][j]=0;

            name[i][j]=0;

        }

    }

    for(i=0;i<20;i++){

           some[i].num=i;

           for(j=0;j<5;j++){

                       some[i].a[j]=some1[i][j];

              }

       }

       

    for(k=0;k<5;k++){

        sort(some,some+20,cmp);

        for(i=4;i>=0;i--){

               any[k][i]=some[i].a[k];

               name[k][i]=some[i].num;

           }

    }

    

    for(i=0;i<20;i++){

           for(j=0;j<5;j++){

        printf("%d ",some[i].a[j]);

              }

        printf("\n");

       }

       

    for(i=0;i<5;i++){

        for(j=0;j<5;j++){

        printf(" %d %d ",name[i][j],any[i][j]);

        }

        printf("\n");

    }

    

    amax=0;

    temp=0;

    

    zzz(0);

    

    printf("%d",amax);

    return 0;

}

标签:name,第十届,int,号位,some,蓝桥,num,any,组省赛
来源: https://www.cnblogs.com/tlysMoodspace/p/11842214.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有