第一范文网 - 专业文章范例文档资料分享平台

2016蓝桥杯c-c++省赛试题及答案解析

来源:用户分享 时间:2025/5/25 6:51:51 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

{ double

sum

=

num[0]

+

(double)num[1]

/

num[2]

+

(double)(num[3]*100+num[4]*10+num[5])/(num[6]*100+num[7]*10+num[8]); if(sum == 10) {

ans ++; } }

void dfs(int index) {

if(index == 9) {

Solve(); return ; }

for(int i = 1 ; i < 10 ; i ++) {

if(!visit[i]) {

visit[i] = true; num[index] = i; dfs(index+1); visit[i] = false; }

} }

int main() {

dfs(0);

printf(\ return 0; }

第四题

快速排序

排序在各种场合经常被用到。 快速排序是十分常用的高效率的算法。

其思想是:先选一个“标尺”, 用它把整个队列过一遍筛子,

以保证:其左边的元素都不大于它,其右边的元素都不小于它。

这样,排序问题就被分割为两个子区间。 再分别对子区间排序就可以了。

下面的代码是一种实现,请分析并填写划线部分缺少的代码。

#include

void s a[], int i, int j) { }

int partition(int a[], int p, int r) {

int i = p; int j = r + 1; int x = a[p]; while(1){

while(ix); if(i>=j) break; s); }

______________________; int t = a[i]; a[i] = a[j]; a[j] = t;

return j;

}

void quicksort(int a[], int p, int r) {

if(p

int q = partition(a,p,r); quicksort(a,p,q-1); quicksort(a,q+1,r); } } int main() { }

int i;

int a[] = {5,13,6,24,2,8,19,27,6,12,1,17}; int N = 12;

quicksort(a, 0, N-1);

for(i=0; i

搜索更多关于: 2016蓝桥杯c-c++省赛试题及答案解析 的文档
2016蓝桥杯c-c++省赛试题及答案解析.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c11x3f2a0lw8n6j4879hw6x2111f20r00be7_2.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top