第1关:求一组数据中最大的两个数
100
- 任务要求
- 参考答案
- 评论9
- 任务描述
- 编程要求
- 测试说明
任务描述
本关任务:利用分治法求一组数据中最大的两个数和最小的两个数。
编程要求
请在右侧编辑器Begin-End处补充代码,完成本关任务。
测试说明
平台会对你编写的代码进行测试,比对你输出的数值与实际正确数值,只有所有数据全部计算正确才能通过测试:
测试输入:
- 10 //数据的总个数
- 1 //此行及以下为具体的每个数据
- 3
- 5
- 7
- 9
- 10
- 8
- 6
- 4
- 2
预期输出:
- max1=10 max2=9
- min1=1 min2=2
开始你的任务吧,祝你成功!
#include
void main() { int num,i; scanf("%d",&num); int a[num]; for(i=0;i 第2关:求一组数据的和
100
- 任务要求
- 参考答案
- 评论9
- 任务描述
- 编程要求
- 测试说明
任务描述
本关任务:利用分治法求一组数据的和。
编程要求
请在右侧编辑器Begin-End处补充代码,完成本关任务,注意需要学生自己获取输入数据再进行操作。
测试说明
平台会对你编写的代码进行测试,比对你输出的数值与实际正确数值,只有所有数据全部计算正确才能通过测试:
测试输入:
- 10 //数据的总个数
- -5 //此行及以下为具体的每个数据
- 5
- 10
- 99
- 100
- 30
- 60
- 98
- -10
- -1
预期输出:分治法求出数组元素的和为:386
开始你的任务吧,祝你成功!
#include "stdio.h" /********** Begin **********/ int main() { int num,i,s=0; scanf("%d",&num); int a[num]; for(i=0;i
第3关:找出数组中第 k 个小的元素
100
- 任务要求
- 参考答案
- 评论9
- 任务描述
- 编程要求
- 测试说明
任务描述
本关任务:对于给定的 n 个元素的数组a[0:n-1],要求从中找出第 k 小的元素。
编程要求
请在右侧编辑器Begin-End处补充代码,完成本关任务,注意需要学生自己获取输入数据再进行操作。
测试说明
平台会对你编写的代码进行测试,比对你输出的数值与实际正确数值,只有所有数据全部计算正确才能通过测试:
测试输入:
- 10 5 //表示给定10(n)个元素的数组,从中找出第5(k)小的元素
- -34 //此行及以下为具体的每个数据
- 95
- -50
- 67
- 73
- 81
- -38
- 10
- -11
- 70
预期输出:第5小的元素是10
开始你的任务吧,祝你成功!
#include
/********** Begin **********/ void BubbleSort(int *arr, int size) { int i, j, tmp; for (i = 0; i < size - 1; i++) { for (j = 0; j < size - i - 1; j++) { if (arr[j] > arr[j+1]) { tmp = arr[j]; arr[j] = arr[j+1]; arr[j+1] = tmp; } } } } int main() { int num,i,j; scanf("%d%d",&num,&j); int a[num]; for(i=0;i