洛谷 P8741 [蓝桥杯 2021 省 B] 填空问题 题解

题目分析

A 空间

简单的单位换算题:
1 MB = 1024 KB = 1048576 B = 8388608 b 256 × 8388608 ÷ 32 = 67108864 1\text{MB}=1024\text{KB}=1048576\text{B}=8388608\text b\\ 256\times8388608\div32=67108864 1MB=1024KB=1048576B=8388608b256×8388608÷32=67108864

故答案为 67108864 67108864 67108864。

B 卡片

用一个数组存储每种卡片剩余的数量,再从 1 1 1 开始,一个个判断每个数需要的卡片是否够用,如果不够用了就输出结果。最终可以得到答案为 3181 3181 3181。

C 直线

枚举每一种组合然后去掉重复的部分即可。

对于去重,可以使用 set 来实现。

代码如下:

cpp 复制代码
#include<iostream>
#include<algorithm>
#include<vector>
#include<set>
using namespace std;
signed main() {
	ios::sync_with_stdio(false),cin.tie(0),cout.tie(0);
	vector<pair<int,int>>vec;
	set<pair<pair<int,int>,int>>ans;
	for(int i=1;i<=20;++i) for(int j=1;j<=21;++j) vec.push_back({i,j});//枚举组合
	for(int i=0;i<vec.size()-1;++i)
		for(int j=i+1;j<vec.size();++j) {
			int x1=vec[i].first,y1=vec[i].second,x2=vec[j].first,y2=vec[j].second;
			int a=x2-x1,b=y1-y2,c=x1*y1-x2*y2;
			int gcd=__gcd(__gcd(a,b),c);
			ans.insert({{b/gcd,a/gcd},c/gcd});//去重
		}
	cout<<ans.size();//输出答案
	return 0;
}

得到答案为 40257 40257 40257。

D 货物摆放

计算出 n n n 的所有因数储存起来,再枚举所有的组合,如果乘积刚好等于 n n n,就累加答案。最终可以得到答案为 2430 2430 2430。

E 路径

就是一个求最短路径的板子题,可以使用 Dijkstra 算法。最终得到答案是 10266837 10266837 10266837。

Code

cpp 复制代码
#include<iostream>
using namespace std;
signed main() {
	ios::sync_with_stdio(false),cin.tie(0),cout.tie(0);
	string ans[]={
		"67108864",
		"3181",
		"40257",
		"2430",
		"10266837"
	};
	cout<<ans[getchar()-'A'];
	return 0;
}
相关推荐
森龙安18 分钟前
指针 || 引用 || const || 智能指针 || 动态内存
c++
**K29 分钟前
C++ 智能指针使用不当导致内存泄漏问题
开发语言·c++·算法
湫兮之风1 小时前
C++:.front()函数作用
开发语言·c++
小老鼠不吃猫1 小时前
力学笃行(四)Qt 线程与信号槽
c++·qt·信息可视化
小羊子说1 小时前
Android 开发中 C++ 和Java 日志调试
android·java·c++
TechQuester1 小时前
解决GPT-4o耗电难题!DeepMind新算法训练效率提升13倍,能耗降低10倍!
java·c++·人工智能·python·算法·chatgpt
观鉴词recommend1 小时前
【c++刷题笔记-动态规划】day32: 509. 斐波那契数 、 70. 爬楼梯 、 746. 使用最小花费爬楼梯
c++·笔记·算法·leetcode·动态规划
DieSnowK1 小时前
[C++][ProtoBuf][初识ProtoBuf]详细讲解
开发语言·c++·google·协议·序列化·反序列化·protobuf
酷酷学!!!1 小时前
C++第一弹 -- C++基础语法上(命名空间 输入输出 缺省参数 函数重载 引用)
开发语言·c++·学习方法·visual studio
郝YH是人间理想1 小时前
《算法笔记》总结No.3——排序
c语言·数据结构·c++·算法·排序算法·csp