2016年第七届蓝桥杯C/C++程序设计B组省级竞赛回顾

更新:11-17 民间故事 我要投稿 纠错 投诉

大家好,今天给各位分享2016年第七届蓝桥杯C/C++程序设计B组省级竞赛回顾的一些知识,其中也会对进行解释,文章篇幅可能偏长,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在就马上开始吧!

方法:暴力循环

容易知道,每层的层数就是上一层的煤球数加上本层的层数。代码如下:

#include#includeusing 命名空间std;

int main()

{

int i=0,sum=0,num=0; //sum为煤球总数,num为当前层的煤球数量

for(i=1;i=100;i++)

{

数+=i;

总和+=数字;

}

printf("%dn",sum); //cout问题2:生日蜡烛

某人从某年开始,每年都举办生日聚会,每次都吹灭与自己年龄相同数量的蜡烛。

现在算起来,他一共吹灭了236支蜡烛。

请告诉我,他几岁开始举办生日聚会?

请填写他开始举办生日聚会的年龄。

注意:您提交的内容必须是整数,不要填写任何多余的内容或说明性文字。

答案:26

方法:暴力枚举,代码如下:

#includeusing命名空间std;

int main()

{

int i,j,num;

//假设有人在i岁的时候开始庆祝他的生日,现在他已经j岁了

//num是吹灭的蜡烛数量

for(i=1;i100;i++)

{

for(j=1;j100;j++)

{

num=(i+j)*(j-i+1)/2;

if(数字==236)

{

printf("%dn",i);

休息;

}

}

}

返回0;

}主题3:综合公式

图像

式中,A~I代表1~9的数字,不同的字母代表不同的数字。

例如:

6+8/3+952/714 是一个解决方案,

5+3/1+972/486 是另一种解决方案。

这个方程有多少个解?

注:您提交的内容应为整数,请勿填写任何多余内容或说明性文字。

答案:29

方法:暴力枚举,注意每个字母代表的数字都不一样。

这题可以用9个for循环一一穷尽。中间用if判断是否有重复数,最后用if判断方程是否成立。代码如下:

#include#includeusing 命名空间std;

int main(){

int A、B、C、D、E、F、G、H、I; //九个不重复的数字

int sum1,sum2,sum3,sum4; //四个多项式

整数答; //统计解

答案=0;

为(A=1;A=9;++A){

为(B=1;B=9;++B){

如果(B==A)继续;

for(C=1;C=9;++C){

如果(C==A||C==B)继续;

为(D=1;D=9;++D){

if(D==A||D==B||D==C)继续;

为(E=1;E=9;++E){

if(E==A||E==B||E==C||E==D)继续;

为(F=1;F=9;++F){

if(F==A||F==B||F==C||F==D||F==E)继续;

为(G=1;G=9;++G){

if(G==A||G==B||G==C||G==D||G==E||G==F)继续;

对于(H=1;H=9;++H){

if(H==A||H==B||H==C||H==D||H==E||H==F||H==G)继续;

为(I=1;I=9;++I){

if(I==A||I==B||I==C||I==D||I==E||I==F||I==G||I==H)继续;

sum1=A*C*(G*100+H*10+I);

sum2=B*(G*100+H*10+I);

sum3=(D*100+E*10+F)*C;

sum4=10*C*(G*100+H*10+I);

//注意问题中的方程必须分成两部分

//GHI*A*C+B*GHI+DEF*C=10*C*GHI

if(sum1+sum2+sum3==sum4){

++ an;

}

}

}

}

}

}

}

}

}

}

printf("%dn",ans);

返回0;

}主题4:快速排序

排序经常用于各种情况。

快速排序是一种非常常用且高效的算法。

想法是:首先选择一个“尺子”,

用它来筛选整个队列,

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

这样,排序问题就被分为两个子区间。

然后分别对子范围进行排序。

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

注意:只填写缺失的内容,不要写任何已经出现在问题上的代码或解释性文字。

答案:交换(a,p,j)

方法:掌握快速排序算法

可以将代码复制到编译器中进行测试

代码如下:

#includevoid swap(int a[], int i, int j)

{

int t=a[i];

a[i]=a[j];

a[j]=t;

}

int 分区(int a[], int p, int r)

{

int i=p;

int j=r + 1;

int x=a[p];

而(1){

同时(九);

if(i=j) 中断;

交换(a,i,j);

}

//____________________;

交换(a,p,j);

返回j;

}

void fastsort(int a[], int p, int r) //快速排序

{

如果(p

用户评论

限量版女汉子

真没想到还有2016年的数据可以查到!

    有13位网友表示赞同!

孤者何惧

那时候我还在上初中呢,还参加过比赛吗?

    有6位网友表示赞同!

短发

蓝桥杯可是很好的比赛啊,考验编程技巧和算法思维。

    有7位网友表示赞同!

此生一诺

C语言C++B组的难度还挺大吧,需要好好练习才能过关。

    有10位网友表示赞同!

我没有爱人i

想问问省赛的题目是什么类型的?跟全国赛一样吗?

    有20位网友表示赞同!

心亡则人忘

我当时参加的是网络赛,感觉蓝桥杯比别的比赛更有趣味性。

    有19位网友表示赞同!

神经兮兮°

蓝桥杯还有很多历史积累啊,能看看以前学生的解决方案吗?

    有19位网友表示赞同!

尘埃落定

希望今年的省赛题目也很棒,可以给学生带来更多的挑战和收获!

    有20位网友表示赞同!

坠入深海i

那时候的编程环境还比较落后吧?

    有6位网友表示赞同!

失心疯i

现在蓝桥杯比过去更加普及了吗?

    有7位网友表示赞同!

青袂婉约

学习C/C++语言感觉很考验耐心,需要好好巩固一下基础知识。

    有8位网友表示赞同!

空巷

在比赛中,高效代码和算法思路都很重要!

    有11位网友表示赞同!

浅巷°

希望看到更多关于2016年蓝桥杯的消息和分享!

    有20位网友表示赞同!

强辩

参加过蓝桥杯的同学可以分享一些经验吗?

    有14位网友表示赞同!

微信名字

对于想参赛的小朋友来说,学习编程是一种很好的锻炼方式。

    有17位网友表示赞同!

怀念·最初

蓝桥杯比赛不仅提高了编程能力,还能锻炼思维逻辑和团队合作精神!

    有12位网友表示赞同!

风中摇曳着长发

也许我们也可以去翻看一下2016年的省赛记录,看看当时的水平吧。

    有13位网友表示赞同!

留我一人

参加过蓝桥杯真的很有成就感,对计算机科学有一定的了解确实很重要!

    有12位网友表示赞同!

【2016年第七届蓝桥杯C/C++程序设计B组省级竞赛回顾】相关文章:

1.蛤蟆讨媳妇【哈尼族民间故事】

2.米颠拜石

3.王羲之临池学书

4.清代敢于创新的“浓墨宰相”——刘墉

5.“巧取豪夺”的由来--米芾逸事

6.荒唐洁癖 惜砚如身(米芾逸事)

7.拜石为兄--米芾逸事

8.郑板桥轶事十则

9.王献之被公主抢亲后的悲惨人生

10.史上真实张三丰:在棺材中竟神奇复活

上一篇:柳岩:智慧之选,魅力人生 下一篇:探索泰坦尼克号上的经典浪漫故事