ImageVerifierCode 换一换
格式:DOCX , 页数:14 ,大小:45.12KB ,
资源ID:4127748      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4127748.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(蓝桥杯cc省赛试题及答案解析.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

蓝桥杯cc省赛试题及答案解析.docx

1、蓝桥杯cc省赛试题及答案解析2016蓝桥杯c-c+B组省赛试题及解析第一题煤球数目有一堆煤球,堆成三角棱锥形。具体:第一层放1个,第二层3个(排列成三角形),第三层6个(排列成三角形),第四层10个(排列成三角形),.如果一共有100层,共有多少个煤球?请填表示煤球总数目的数字。注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。答案:171700#include int main() int a101 =0; for(int i = 1 ; i 101 ; i +) ai = ai-1 + i; int ans = 0; for(int j = 1 ; j 101 ; j +)

2、 ans += aj; printf(%dn,ans); return 0; 第二题生日蜡烛某君从某年开始每年都举办一次生日party,并且每次都要吹熄与年龄相同根数的蜡烛。现在算起来,他一共吹熄了236根蜡烛。请问,他从多少岁开始过生日party的?请填写他开始过生日party的年龄数。注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。 答案:26#include int main() int start,end; for(start = 1 ; start 236 ; start +) for( end = start ; end 236 ; end + ) int sum

3、 = 0; for(int i = start; i = end; i +) sum += i; if( sum = 236) printf(start : %d end : %dn,start,end); return 0; 第三题 凑算式 B DEFA + - + - = 10 C GHI (如果显示有问题,可以参见【图】) 这个算式中AI代表19的数字,不同的字母代表不同的数字。比如:6+8/3+952/714 就是一种解法,5+3/1+972/486 是另一种解法。这个算式一共有多少种解法?注意:你提交应该是个整数,不要填写任何多余的内容或说明性文字。答案:29#include int

4、 ans = 0; int num10; bool visit10; void Solve() double sum = num0 + (double)num1 / num2 + (double)(num3*100+num4*10+num5)/(num6*100+num7*10+num8); if(sum = 10) ans +; void dfs(int index) if(index = 9) Solve(); return ; for(int i = 1 ; i 10 ; i +) if(!visiti) visiti = true; numindex = i; dfs(index+1)

5、; visiti = false; int main() dfs(0); printf(%dn,ans); return 0; 第四题快速排序排序在各种场合经常被用到。快速排序是十分常用的高效率的算法。其思想是:先选一个“标尺”,用它把整个队列过一遍筛子,以保证:其左边的元素都不大于它,其右边的元素都不小于它。这样,排序问题就被分割为两个子区间。再分别对子区间排序就可以了。下面的代码是一种实现,请分析并填写划线部分缺少的代码。#include void swap(int a, int i, int j) int t = ai; ai = aj; aj = t;int partition(int

6、 a, int p, int r) int i = p; int j = r + 1; int x = ap; while(1) while(ir & a+ix); if(i=j) break; swap(a,i,j); _; return j;void quicksort(int a, int p, int r) if(pr) 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;

7、 quicksort(a, 0, N-1); for(i=0; iN; i+) printf(%d , ai); printf(n); return 0;注意:只填写缺少的内容,不要书写任何题面已有代码或说明性文字。答案:swap(a,p,j)第五题抽签X星球要派出一个5人组成的观察团前往W星。其中:A国最多可以派出4人。B国最多可以派出2人。C国最多可以派出2人。.那么最终派往W星的观察团会有多少种国别的不同组合呢?下面的程序解决了这个问题。数组a 中既是每个国家可以派出的最多的名额。程序执行结果为:DEFFFCEFFFCDFFFCDEFFCCFFFCCEFFCCDFFCCDEFBEFFFB

8、DFFFBDEFFBCFFFBCEFFBCDFFBCDEF.(以下省略,总共101行)#include #define N 6#define M 5#define BUF 1024void f(int a, int k, int m, char b) int i,j; if(k=N) bM = 0; if(m=0) printf(%sn,b); return; for(i=0; i=ak; i+) for(j=0; ji; j+) bM-m+j = k+A; _; 图.” 的多余内容。所有代码放在同一个源文件中,调试通过后,拷贝提交该源码。注意: main函数需要返回0注意: 只使用ANSI

9、C/ANSI C+ 标准,不要调用依赖于编译环境或操作系统的特殊函数。注意: 所有依赖的函数必须明确地在源文件中 #include , 不能通过工程设置而省略常用头文件。提交时,注意选择所期望的编译器类型。答案:方法一:#include #include int main() int n; int flag = false; scanf(%d,&n); for(int i = 0 ; i * i = n ; i +) for(int j = 0 ; j * j = n ; j +) for(int k = 0 ; k * k = n ; k +) int temp = n - i*i - j*

10、j - k*k; double l = sqrt(double) temp); if(l = (int)l ) printf(%d %d %d %dn,i,j,k,(int)l); flag = true; break; if(flag)break; if(flag)break; return 0; 方法二:#include #include int mpt5000010 =0; .” 的多余内容。所有代码放在同一个源文件中,调试通过后,拷贝提交该源码。注意: main函数需要返回0注意: 只使用ANSI C/ANSI C+ 标准,不要调用依赖于编译环境或操作系统的特殊函数。注意: 所有依赖的

11、函数必须明确地在源文件中 #include , 不能通过工程设置而省略常用头文件。提交时,注意选择所期望的编译器类型。第十题最大比例X星球的某个大奖赛设了M级奖励。每个级别的奖金是一个正整数。并且,相邻的两个级别间的比例是个固定值。也就是说:所有级别的奖金数构成了一个等比数列。比如:16,24,36,54其等比值为:3/2现在,我们随机调查了一些获奖者的奖金数。请你据此推算可能的最大的等比值。输入格式:第一行为数字 N (0N100),表示接下的一行包含N个正整数第二行N个正整数Xi(Xi1 000 000 000 000),用空格分开。每个整数表示调查到的某人的奖金数额要求输出:一个形如A/

12、B的分数,要求A、B互质。表示可能的最大比例系数测试数据保证了输入格式正确,并且最大比例是存在的。例如,输入:31250 200 32程序应该输出:25/4再例如,输入:43125 32 32 200程序应该输出:5/2再例如,输入:33888 524288 2程序应该输出:4/1资源约定:峰值内存消耗 256MCPU消耗 3000ms请严格按要求输出,不要画蛇添足地打印类似:“请您输入.” 的多余内容。所有代码放在同一个源文件中,调试通过后,拷贝提交该源码。注意: main函数需要返回0注意: 只使用ANSI C/ANSI C+ 标准,不要调用依赖于编译环境或操作系统的特殊函数。注意: 所有

13、依赖的函数必须明确地在源文件中 #include , 不能通过工程设置而省略常用头文件。提交时,注意选择所期望的编译器类型。答案:#include #include #include using namespace std; #define LL long long struct fs LL up,down; ; int n; LL arr110; fs Fs110; bool cmp(LL a,LL b) return a b; LL Gcd(LL a,LL b) if( b = 0 )return a; return Gcd(b,a%b); LL Get(LL a, LL b) if( a

14、 b) a = b = a = b; LL v30; queueteam; if( a = b | a / b = a) return b; v0 = a, v1 = b; v2 = a / b; int top = 3,i,j; (a/b); while() LL now = (); (); for(i = 0 ; i now) ? vi / now : now / vi; bool find = false; for(j = 0 ; j top ; j +) if( vj = temp) find = true; if(find = true) continue; (temp); vtop

15、+ = temp; LL ans = v0; for(i = 0 ; i top ; i +) if(vi != 1) ans = vi; break; for(i = 0 ; i top ; i +) if( vi ans & vi != 1) ans = vi; return ans; int main() int i,j; scanf(%d,&n); for(i = 0 ; i n ; i +) scanf(%lld,&arri); sort(arr,arr+n,cmp); int top = 1; for(i = 1; i n ; i +) if(arri != arri-1) arrtop+ = arri; n = top; for(i = 0 ; i n - 1; i +) LL gcd = Gcd(arri,arri+1); Fsi.up = arri / gcd; Fsi.down = arri+1 / gcd; LL x = Fs0.up; for(i = 0 ; i n - 1 ; i +) x = Get(x,Fsi.up); LL y = Fs0.down; for(i = 0 ; i n - 1; i +) y = Get(y,Fsi.down); printf(%lld/%lldn,x,y); return 0;

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1