蓝桥杯省赛第一场 C++ 大学 B 组2021

A 空间

蓝桥杯省赛第一场 C++ 大学 B 组2021

1.解题思路
1MB=1024KB=1024B
1B=8bit
所以256MB=25610241024*8就是所占字节。
所求=25610241024*8/32=67108864
答案为:67108864

B 卡片

蓝桥杯省赛第一场 C++ 大学 B 组2021
1.解题思路
暴力模拟即可
2.代码

#include<iostream>
using namespace std;
main()
{
    int a[10];
    for(int i=0;i<10;i++)
    {
        a[i]=2021;
    }
    int j,flag=1,m;
    for(int i=1;;i++)
    {
        j=i;
        while(j)
        {
            a[j%10]--;
            if(a[j%10]<0)
            {
                flag=0;
                break;
            }
            j/=10;
        }
        if(flag==0)
        {
            break;
        }
        m=i;
    }
    cout<<m;
}

输出:3181

注意:在
if(a[j%10]<0)

        {
            flag=0;
            break;
        }

中第一次把if(a[j%10]<=0)输出成了3180,当a【i】=0时不能停止,用完小于0才结束。

C 直线

蓝桥杯省赛第一场 C++ 大学 B 组2021
1.解题思路

D 货物摆放

蓝桥杯省赛第一场 C++ 大学 B 组2021

解题思路
分解因数,暴力遍历。

代码:

第一次想着暴力遍历,结果需要若干个小时才跑的完。

#include<iostream>
using namespace std;
main()
{
    long long n=2021041820210418,n1,n2,n3=0;
    int cou=0;
    for(long long i=1;i<=n;i++)
    {
        n1=n/i;
        for(long long j=1;j<=n;j++)
        {
            n2=n1/j;
            for(long long p=1;p<=n;p++)
            {
                if(n2%p==0)
                {
                    cou++;
                    cout<<"还在跑着,这是第"<<n3++<<"次"<<endl;
                }
            }
        }

    }
    cout<<"答案出来了!"<<endl;
    cout<<cou;
}

E 路径

蓝桥杯省赛第一场 C++ 大学 B 组2021

上一篇:网站访问量统计小案例 | 学习笔记


下一篇:让你心动的 HTML5 & CSS3 效果【附源码下载】