这里写自定义目录标题

  • 2019年全国高校计算机能力挑战赛C++组初赛
    • 1题目一
    • 题目二
    • 题目三
    • 题目四
    • 题目五

2019年全国高校计算机能力挑战赛C++组初赛

1题目一

16.电商促销某种商品时,希望通过打折鼓励消费者组团消费。已知,团队消费金额=该团的人数和*商品单价。打折规则如下:
当组团消费者数量不满50人时,商品消费金额没有折扣;消费者数量大于等于50,但小于100人时,商品消费金额打9折;消费者数量达到或超过100人时,商品消费金额打85折。
现在有一批团购信息(含团购人数和商品单价,每人限购一件商品),请计算该团折扣后实际消费金额。
输入说明:某团的人数和商品单价。
输出说明:求该团的折扣后的实际消费金额。
输入样例:100 50

输出样例:4250

#include<iostream>using namespace std;int main(){int n,m;double res;cin>>n>>m;if(n<50){}else if(n<100){res=m*0.9;}else{res=m*0.85;}cout<<n*res;return 0;}

题目二

17.对于给定的十进制整数N(N<100000),将1到N(含N)之间的每个整数转成八进制,求转换后的所有八进制数中含7的总个数。
提示:某个数的八进制含7的个数可以参照下面的例子:
对于整数127,对应的八进制为177,其含7的个数为2。
输入说明:输入整数N输出说明:输出含7的总个数
输入样例:8

输出样例:1

#include<iostream>
using namespace std;
int l=0,ans[500]= {0};
int res=0;
void change(int x)
{if(x<8){ans[l++]=x;for(int i=l-1; i>=0; i--){//cout<<ans[i];if(ans[i]==7){res++;}}return;}else{ans[l++]=x%8;}change(x/=8);
}
int main(){int n,i;cin>>n;for(i=0;i<n;i++){change(n);}cout<<res;return 0;}

题目三

18.输入N个整数,从中挑选符合以下规则的三种类型的数,分别输出。
(1)个位数字为1、4或7的数;(2)个位数字为2、5或8的数;个位数字为3、6或9的数。
输入说明:第一行输入整数个数N;第二行输入这N个整数。
输出说明:分三行输出,第一行输出符合条件(1)的数据,第二行输出符合条件(2)的数据,第三行输出符合条件(3)的数据;备注:某行如果没有任何数据,输出空行

输入样例:10

11 12 13 24 25 26 37 38 39 40

输出样例:

11 24 37

12 25 38

13 26 39

#include<iostream>
using namespace std;
void solution(int arr[],int n,int sw){switch(sw){case 1:for(int i=0;i<n;i++){if(arr[i]%10==1||arr[i]%10==4||arr[i]%10==7){cout<<arr[i]<<" ";}}break;case 2:for(int i=0;i<n;i++){if(arr[i]%10==2||arr[i]%10==5||arr[i]%10==8){cout<<arr[i]<<" ";}}break;case 3:for(int i=0;i<n;i++){if(arr[i]%10==3||arr[i]%10==6||arr[i]%10==9){cout<<arr[i]<<" ";}}break;}
}
int main(){int n,i;int arr[100000]={0};cin>>n;for(i=0;i<n;i++){cin>>arr[i];}for(i=0;i<3;i++){solution(arr,n,i+1);cout<<endl;}return 0;}

题目四

19.在N(N<30)名运动员参加的体操比赛中,有K(K<10)名裁判给每位运动员分别打分,按规则每名运动员最后得分需去掉一个最高分和一个最低分,然后把其他裁判的打分相加,计算得出该运动员的总得分(规定数据中每名运动员的总得分各不相同)。现在比赛完毕,根据总得分高低排序得出冠军、亚军。
请你帮忙算出冠军和亚军,并输出他们的姓名。
输入说明:第一行输入整数N和K。N表示运动员人数,K表示裁判人数;从第二行开始,依次分行输入这N名运动员的数据(数据格式为:姓名各裁判的整数打分,其中每名运动员的姓名不含空格,每名裁判的打分以空格分隔)。
输出说明:输出冠军和亚军运动员的姓名,以单个空格分开他们的姓名。
输入样例:5 4
Zhang 85 85 90 80
Wang 85 90 80 90

Zhao 90 92 85 90

Li 75 80 85 80
Yang 81 75 80 85

输出样例:Zhao Wang

#include<bits/stdc++.h>
using namespace std;
struct Athlete{string name;int sco[11]={0};//有K(K<10)名裁判
};
bool compare(int a,int b)
{return a<b;
}
void out(Athlete p[],int n,int m){for(int i=0;i<n;i++){cout<<p[i].name;for(int j=0;j<m;j++){cout<<p[i].sco[j]<<" ";}}
}
int main(){int n,m;Athlete p[31];int finalsco[31]={0};cin>>n>>m;for(int i=0;i<n;i++){cin>>p[i].name;for(int j=0;j<m;j++){cin>>p[i].sco[j];}}for(int i=0;i<n;i++){sort(p[i].sco,p[i].sco+4,compare);}for(int i=0;i<n;i++){for(int j=1;j<m-1;j++){finalsco[i]+=p[i].sco[j];}}int indexone=0;int MaxSco=0;for(int i=0;i<n;i++){if(MaxSco<finalsco[i]){MaxSco=finalsco[i];indexone=i;}}int indextwo=0;MaxSco=0;for(int i=0;i<n;i++){if(i==indexone) continue;if(MaxSco<finalsco[i]){MaxSco=finalsco[i];indextwo=i;}}cout<<p[indexone].name<<" "<<p[indextwo].name;//out(p,n,m);return 0;}

题目五

20.已知结点元素值为正整数且值不相同的一棵二叉树。该二叉树通过给出其先序遍历序列和中序遍历序列构造而成。输入一个整数x,针对此二叉树编写程序求出x的右子树中所有结点值的和(若×不在树上,输出-1)。
输入说明:第一行输入某二叉树的先序遍历序列
第二行输入该二叉树的中序遍历序列
第三行输入正整数x输出说明:若×在树上,输出其右子树所有结点值的和(如果右子树为空,输出0);如果×不在树上则输出-1。
输入样例1:20 15 10 12 18 16 17 25 30 10 12 15 16 17 18 20 25 30

输出案例1:51

输入样例2:20 15 10 12 18 16 17 25 30 10 12 15 16 17 18 20 25 30

输出案例2:0

输入样例3:20 15 10 12 18 16 17 25 30 10 12 15 16 17 18 20 25 30

输出案例3:-1

思路: 找到前序的中点, 遍历中序的排列 找到中序树的与前序对应的根节点,即为 下标的左边即为 是否存在的值 不存在输出-1

下面写到一半觉得没有必要这样写 ,应为根据中序可以直接求出右子树的值

#include<stdio.h>
#include<stdlib.h>
typedef int eleType;
typedef struct BiTree{eleType data;struct BiTree* lt;struct BiTree* rt;
}BiTreeNode;BiTreeNode* createTree(eleType *pre,eleType *mid,int number){if(number==0)return NULL;//无节点返回nulleleType ele=pre[0];// 头节点int i=0;//for(i=0;i<number&&ele!=mid[i];i++);while(i<number && mid[i]!=ele)i++;int leftNodeNum=i;int rightNodeNum=number-i-1;BiTreeNode *node=(BiTreeNode*)malloc(sizeof(BiTreeNode));node->data=ele;node->lt=createTree(&pre[1],&mid[0],leftNodeNum);// 创建左节点 node->rt=createTree(&pre[leftNodeNum+1],&mid[leftNodeNum+1],rightNodeNum);// 创建左节点return  node;
}
void printT(BiTreeNode *node){if(node==NULL)return;if(node->data!=0)printf("%d ",node->data);printT(node->lt);printT(node->rt);
}
void printT2(BiTreeNode *node){if(node==NULL)return;printT(node->lt);if(node->data!=0)printf("%d ",node->data);printT(node->rt);
}
int main(){char testa[]="12473568";//20 15 10 12 18 16 17 25 30 char testb[]="47215368";//10 12 15 16 17 18 20 25 30int inputa[100]={20,15,10,12,18,16,17,25,30};int inputb[100]={20,15,10,12,18,16,17,25,30};BiTreeNode *node;node=createTree(inputa,inputb,sizeof(inputa)/sizeof(inputa[0]));printT2(node);return 0;
}

2019年全国高校计算机能力挑战赛C++组初赛相关推荐

  1. 2019C语言程序设计大赛,2019年全国高校计算机能力挑战赛 C语言程序设计决赛

    2019年全国高校计算机能力挑战赛 C语言程序设计决赛 毕竟这个比赛是第一次举办,能理解.. 希望未来再举办时,能够再完善一下题面表述.数据范围. 话说区域赛获奖名额有点少吧.舍友花60块想混个创新创 ...

  2. 非科班Java尝试全国高校计算机能力挑战赛第三届计挑赛

    写在前面:①大佬勿在意,小打小闹!②若不决参加与否,希望下文可以给你帮助(仅限程序设计赛项). 文章目录 一.个人真实情况 二.比赛最细简介 三.最全参赛准备 四.比赛时候遇到不会做怎么办? 一.个人 ...

  3. 全国高校计算机能力挑战赛真题(二)

    全国高校计算机能力挑战赛Java模拟练习题(二) 竞赛官网:http://www.ncccu.org.cn/ 全国高校计算机能力挑战赛真题(一) 1.模拟时间:90分钟 2.单选题15题(每题3分), ...

  4. 全国高校计算机能力挑战赛

    CSDN话题挑战赛第1期 活动详情地址:https://marketing.csdn.net/p/bb5081d88a77db8d6ef45bb7b6ef3d7f 参赛话题:大学生竞赛指南 话题描述: ...

  5. 2020年第二届全国高校计算机能力挑战赛Excel模拟题

    2020年第二届全国高校计算机能力挑战赛Excel模拟题 Excel模拟题1 1.模拟答题时间: 60分钟; 2.单选题45题(每题1分),不定向选择题10 (每题2分),判断题10题(每题1分),实 ...

  6. 【2021年第三届全国高校计算机能力挑战赛】大数据应用赛

    [2021年第三届全国高校计算机能力挑战赛]大数据应用赛 赛题:大数据应用赛 一.赛题背景: 二.时间安排: 三.奖项设置: 四.赛题和数据: 五.评价标准: 六.作品提交要求: 七.解决方案: 八. ...

  7. 第二届全国高校计算机能力挑战赛-Java程序设计赛

    第二届全国高校计算机能力挑战赛-Java程序设计赛 2020年第二届全国高校计算机能力挑战赛-Java程序设计赛前15题为选择题.16,17,18,19为编程题. 16题 题目:统计从1到N的整数中, ...

  8. 2020年全国高校计算机能力挑战赛C++初赛程序设计题2:九键拼音中数字与英文字母成对应关系:2--abc, 3-def, 4-ghi, 5--jkl, 6--mno, 7--pqrs, 8--tuv

    2020年全国高校计算机能力挑战赛C++初赛程序设计题2:九键拼音中数字与英文字母成对应关系:2–abc, 3-def, 4-ghi, 5–jkl, 6–mno, 7–pqrs, 8–tuv, 9–w ...

  9. 2020全国高校计算机能力挑战赛程序设计赛Python组区域赛(初赛)试题及参考解答

    2020全国高校计算机能力挑战赛程序设计赛Python组区域赛(初赛)试题及参考解答 简介 赛题构成 代码提交说明 成绩评定 2020真题 1-1 数字与相邻的前.后数字之和可以被4整除 题目 个人对 ...

最新文章

  1. ‘vue-cli-service‘ 不是内部或外部命令,也不是可运行的程序
  2. centOS下调整swap
  3. Ubuntu 16.04 利用qemu模拟ARM开发板
  4. 7.3 编址与存储相关计算
  5. 理解:复杂度是O(log^n) 就是二分法
  6. 宝马奥迪工厂模式_宝马的完整形式是什么?
  7. [2018.07.24 T1] 真板题
  8. pmp第六版错题集6.1
  9. 如何调用TUIO中的源码
  10. 无线控制需要服务器,无线局域网无线控制器管理用户通过RADIUS服务器认证的配置-Cisco.PDF...
  11. 微麦投影仪android遥控器,投影仪遥控器如何使用 投影仪遥控器使用方法【详解】...
  12. FlashFXP上传下载
  13. JavaScript中的mouseover与mouseenter,mouseout和mouseleave的区别
  14. 贝壳找房值百亿美元吗?
  15. 工信部计算机二级证书有什么用,公务员考试,这三个证书用处大,持证年薪10W+...
  16. 折腾实现固定IP的服务器BT做种
  17. 我和我的代码 | 每日趣闻
  18. 读书笔记6:Attentive Convolution
  19. DeepLab-v3简易思维导图
  20. 为什么大多数知名互联网公司都加班

热门文章

  1. 晒一手hbs helper
  2. 第34课:彻底解密Spark 2.1.X中Shuffle 中SortShuffleWriter排序源码内幕解密
  3. 企业级PPTP服务器部署
  4. 一本好书的诞生与亮相
  5. 值得销售人员看的书籍
  6. 什么是.vue文件,它的作用是什么
  7. 浙江省高考报考类别计算机,2019浙江高考一分一段表出炉!这些志愿填报的关键信息和节点一定要了解~...
  8. 服务器未响应怎么弄,快速解决DNS服务器未响应的四个小妙招
  9. 虹科分享 | 终端安全防护 | 网络安全术语列表(终篇)
  10. 使用Android自带的DownloadManager下载ApK并安装