第七届蓝桥杯C/C++ A组 省赛

第七届蓝桥杯省赛结束了,趁着还有点印象,赶紧把答案记一下。

1、年龄,将父亲的年龄两个数字交换一下得到儿子的年龄,并且父亲的年龄减去儿子的年龄为27,求有几种情况(30 和3也算一种)。

#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
    int ans=0;
    for(int i=10;i<=100;i++)
    {
            int f1 = i/10;
            int f2 = i%10;
            int son = f2*10+f1;
            if(i-son==27)
            {
                 cout<<i<<" "<<son<<endl;
                 ans++;
            }
    }
    cout<<ans<<endl;
    system("pause");
    return 0;
}

答案:7种

2、某君从某岁开始庆祝生日,几岁生日蛋糕上就插几根蜡烛,至今为止他一共用过236根蜡烛,求他是几岁开始庆祝生日的。

#include <iostream>
#include <cstdlib>
using namespace std;
int getsum(int start,int end)
{
    int sum=0;
    for(int i=start;i<=end;i++)
    {
            sum+=i;
    }
    return sum;
}
int main()
{
    for(int i=1;i<=100;i++)
    {
            for(int j=1;j<=100;j++)
            {
                    int sum = getsum(i,j);
                    if(sum==236)cout<<i<<" "<<j<<endl;
            }
    }
    system("pause");
    return 0;
}

答案:26岁

3、好像是给了一堆格子,要求用1到9填进去,并且相邻位置的数字不能相邻,这个没做出来………………

4、好像是代码填空吧,去掉数字的尾1,记得我写的是:

x&(x+1)

当时运行代码,确实实现了去掉尾1

5、代码填空,快速排序,这道题,如果知道快速排序的基本思想的话比较好想,当然题目描述里面其实说的就是它的思想,只是比较抽象

我写的是:

swap(a,p,j)

在机器上运行代码,确实实现了排序

6、后面的记不太清楚了,我记得有一道叫做寒假作业,是用1到13这13个数字构成加减乘除四个算式,并且不能重复使用数字。

我用的是暴力破解,直接六重循环,模拟每一个位置的数字,只要验证给出1到13中用掉了12个数字即认为符合要求,代码太长,不记得了,我求出来的应该是:

64

7、还有一个剪窗格的,从12个格子中剪出5个,并且要求这5个格子相连,当时也是用暴力算法,但是可能限定条件有问题因此,一直没调出来。

之后就是编程大题了,代码太长都不记得了………………………………

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值