题解014:P8741 [蓝桥杯 2021 省 B] 填空问题

· · 题解

试题 A:空间

这题比较水,只要学过空间换算的应该都知道一个 32 位二进制整数的存储空间是 4 个字节,而且 1 \mathrm{MB} = 1024 \mathrm{KB} = 1024 \mathrm{B},那我们就可以直接算出答案为 67108864。

试题 B:卡片

注意到题目中提示我们要打代码,那我们就暴力枚举每一个数字,直到拼不出来为止,对于每一个数字,先数位分离,再使用桶计数,如果有计数器超过 2021 的,那就输出结束,注意每次不用清空。 最后得到答案是 3181。

试题 C:直线

两重循环枚举每个点所确定的直线,然后把数据扔到集合中进行去重,最后答案可得 40257。

试题 D:货物摆放

先记录 n 的所有因数,三重循环枚举 L,W,H,最后统计的答案为 2430。

试题 E:路径

依据题目模拟建图之后跑最短路即可得到答案 10266837。

AC 代码

#include <bits/stdc++.h>
using namespace std;

string ans [] = {
    "67108864",
    "3181",
    "40257",
    "2430",
    "10266837",
};

int main() {
    char T;
    cin >> T;
    cout << ans[T - 'A'];
    return 0;
}