历年蓝桥杯省赛B组真题试题.docx

历年蓝桥杯省赛B组真题试题.docx

ID:53450197

大小:96.13 KB

页数:19页

时间:2020-04-03

历年蓝桥杯省赛B组真题试题.docx_第1页
历年蓝桥杯省赛B组真题试题.docx_第2页
历年蓝桥杯省赛B组真题试题.docx_第3页
历年蓝桥杯省赛B组真题试题.docx_第4页
历年蓝桥杯省赛B组真题试题.docx_第5页
资源描述:

《历年蓝桥杯省赛B组真题试题.docx》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、(1)煤球数目有一堆煤球,堆成三角棱锥形。具体:第一层放1个,第二层3个(排列成三角形),第三层6个(排列成三角形),第四层10个(排列成三角形),....如果一共有100层,共有多少个煤球?题解:纯粹的数学题而已inta[101]={0};for(inti=1;i<101;i++)a[i]=a[i-1]+i;intans=0;for(intj=1;j<101;j++)ans+=a[j];printf("%d",ans);(2)生日蜡烛某君从某年开始每年都举办一次生日party,并且每次都要吹熄与年龄相同根数的蜡烛。现在算起来,他一共吹熄了2

2、36根蜡烛。请问,他从多少岁开始过生日party的?请填写他开始过生日party的年龄数。题解:暴力枚举。第一重循环枚举刚开始过生日时候的岁数。第二重循环是枚举现在的岁数第三重循环就是将刚开始过生日的岁数和现在的岁数加起来。intstart,end;for(start=1;start<236;start++){for(end=start;end<236;end++){intsum=0;for(inti=start;i<=end;i++)sum+=i;if(sum==236)printf("start:%dend:%d",start,end);

3、}}(3)BDEFA+—+——=10CGHI(如果显示有问题,可以参见【图1.jpg】)这个算式中A~I代表1~9的数字,不同的字母代表不同的数字。比如:6+8/3+952/714就是一种解法,5+3/1+972/486是另一种解法。这个算式一共有多少种解法?//29题解:DFS+回溯由于计算机中5/2会等于2,而且如果打算采用精度方面的处理的话,会很麻烦,而且很容易错。所以,把这些式子全部变成乘法形式就好了。A*C*GHI+B*GHI+DEF*C=10*C*GHI代码:intvisit[10],num[10];intsum=0;voiddfs(

4、intn){if(n==10){intb=num[7]*100+num[8]*10+num[9];//GHIinta=num[4]*100+num[5]*10+num[6];//DEF//cout<

5、=1;num[n]=i;dfs(n+1);visit[i]=0;num[n]=0;}}}intmain(){memset(num,0,sizeof(num));memset(visit,0,sizeof(visit));dfs(1);cout<

6、间。再分别对子区间排序就可以了。下面的代码是一种实现,请分析并填写划线部分缺少的代码。#includevoidswap(inta[],inti,intj){intt=a[i];a[i]=a[j];a[j]=t;}intpartition(inta[],intp,intr){inti=p;intj=r+1;intx=a[p];while(1){while(ix);//一样的,一直左移直到小于x时if(i>=j)brea

7、k;//如果一直移动到了相交的区间,说明这个区间内都是由小到大的,就直接退拉!不用交换啦!swap(a,i,j);//有的话呢,就交换,这样保证了左小右大。}______________________;returnj;}voidquicksort(inta[],intp,intr){if(p

8、uicksort(a,0,N-1);for(i=0;i

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。