CCF-202206-2-寻宝!大冒险!
目录
题目背景
问题描述
一、思路:
二、实现方法(C++)
2.1、方法一(int储存)
思路:
C++实现如下:
2.2、方法二(结构体储存)
思路:
注意:边界判断
C++实现如下:
2.3、方法三(map储存,int为key,map为value)
思路:
C++实现如下:
2.4、方法四(map储存,pair为key,int为value)
思路:
C++实现如下:
三、遇到的问题
3.1、二维动态数组
3.2、vector作为value
3.3、结构体数组
题目背景
暑假要到了。可惜由于种种原因,小 P 原本的出游计划取消。失望的小 P 只能留在西西艾弗岛上度过一个略显单调的假期……直到……
某天,小 P 获得了一张神秘的藏宝图。
问题描述
西西艾弗岛上种有 n 棵树,这些树的具体位置记录在一张绿化图上。
简单地说,西西艾弗岛绿化图可以视作一个大小为 (L+1)×(L+1) 的 01 矩阵 A,
地图左下角(坐标 (0,0))和右上角(坐标 (L,L))分别对应 A[0][0] 和 A[L][L]。
其中 A[i][j]=1 表示坐标 (i,j) 处种有一棵树,A[i][j]=0 则表示坐标 (i,j) 处没有树。
换言之,矩阵 A 中有且仅有的 n 个 1 展示了西西艾弗岛上 n 棵树的具体位置。
传说,大冒险家顿顿的宝藏就埋藏在某棵树下。
并且,顿顿还从西西艾弗岛的绿化图上剪下了一小块,制作成藏宝图指示其位置。
具体来说,藏宝图可以看作一个大小为 (S+1)×(S+1) 的 01 矩阵 B(S 远小于 L),对应着 A 中的某一部分。
理论上,绿化图 A 中存在着一处坐标 (x,y)(0≤x,y≤L−S)与藏宝图 B 左下角 (0,0) 相对应,即满足:
对 B 上任意一处坐标 (i,j)(0≤i,j≤S),都有 A[x+i][y+j]=B[i][j]。
当上述条件满足时,我们就认为藏宝图 B 对应着绿化图 A 中左下角为 (x,y)、右上角为 (x+S,y+S) 的区域。
实际上,考虑到藏宝图仅描绘了很小的一个范围,满足上述条件的坐标 (x,y) 很可能存在多个。
请结合西西艾弗岛绿化图中 n 棵树的位置,以及小 P 手中的藏宝图,判断绿化图中有多少处坐标满足条件。
特别地,藏宝图左下角位置一定是一棵树,即 A[x][y]=B[0][0]=1,表示了宝藏埋藏的位置。
输入格式
从标准输入读入数据。
输入的第一行包含空格分隔的三个正整数 n、L 和 S,分别表示西西艾弗岛上树的棵数、绿化图和藏宝图的大小。
由于绿化图尺寸过大,输入数据中仅包含 n 棵树的坐标而非完整的地图;即接下来 n 行每行包含空格分隔的两个整数 x 和 y,表示一棵树的坐标,满足 0≤x,y≤L 且同一坐标不会重复出现。
最后 (S+1) 行输入小 P 手中完整的藏宝图,其中第 i 行(0≤i≤S)包含空格分隔的 (S+1) 个 0 和 1,表示 B[S−i][0]⋯B[S−i][S]。
需要注意,最先输入的是 B[S][0]⋯B[S][S] 一行,B[0][0]⋯B[0][S] 一行最后输入。
输出格式
输出到标准输出。
输出一个整数,表示绿化图中有多少处坐标可以与藏宝图左下角对应,即可能埋藏着顿顿的宝藏。
样例 1 输入
5 100 2
0 0
1 1
2 2
3 3
4 4
0 0 1
0 1 0
1 0 0
样例 1 输出
3
样例 1 解释
绿化图上 (0,0)、(1,1) 和 (2,2) 三处均可能埋有宝藏。
样例 2 输入
5 4 2
0 0
1 1
2 2
3 3
4 4
0 0 0
0 1 0
1 0 0
样例 2 输出
0
样例 2 解释
如果将藏宝图左下角与绿化图 (3,3) 处对应,则藏宝图右上角会超出绿化图边界,对应不成功。
子任务
40% 的测试数据满足:L≤50;
70% 的测试数据满足:L≤2000;
全部的测试数据满足:n≤1000、L≤109 且 S≤50。
提示
实际测试数据中不包括答案为 0 的用例。
一、思路:
毕竟是CCF第二题,所以一上来就知道不能构造一张很大的地图,一定是从很小的藏宝图来入手。所以想到了将每棵树作为一个小地图(大小为藏宝图的小地图)的左下角的位置,为每棵树维护一个小地图,最后将每棵树维护的小地图与藏宝图进行比对即可。
还有一个思路就是,不维护那么多的小地图,只需要将大地图中的树的坐标存到c++的容器里,每次检查一棵树是否能作为有宝藏的地图时,就检查藏宝图内所有树的坐标是否都能在以这棵树为左下角的(S+1)*(S+1)区域内找到,如果可以便满足题目要求的条件。
当然,为了节省运算时间和比对的次数,我么可以在处理每棵树的时候就为其储存一个值存放其(S+1)*(S+1)区域内拥有的树木的总数量,以及其(S+1)*(S+1)区域是否超过大地图的边界,这样我们在判断时先比对这两个常量与藏宝图的关系,就可以节省一部分匹配的时间。
由于开始写这个题的时候对C++的stl容器还不是很了解,在不断试错的过程中,熟悉了很多容器的使用方法,下面通过若干个实现例子分别解释。
注: 写这个题目写了十几遍都不知道错在哪,最后发现是自己没理解题目,样例给的树的坐标都是从小到大的(从左下角到右上角)导致我以为测试数据都是这个规律,以至于开始写了十几遍都没找到错误,一直都是零分,接下来的实现方法均是100写法,同时可以帮助加深对C++ stl容器的理解和使用。
二、实现方法(C++)
2.1、方法一(int储存)
思路:
在输入每颗树的时候就判断其构成的小地图是否越界,如果越界其必不可能用有宝藏,故将A[i][3] 置为 -1,表示其越界。
接着循环输入的每一棵树,为其构造一个藏宝图大小的小地图,同时储存其拥有的树的数量。
最后进行比较,遇到满足条件的树会将num+1。
C++实现如下:
#include<iostream>
using namespace std;int main() {int n,L,S;cin>>n>>L>>S;
int A[1001][4];
int B[51][51];
int temp[1001][51][51];
int cnt;for(int i = 0; i<n; ++i) {int x,y;cin>>x>>y;A[i][0] = x;A[i][1] = y;if(x+S>L||y+S>L) {A[i][3] = -1;}}for(int i = S; i>=0; --i) {for(int j = 0; j<=S; ++j) {cin>>B[i][j];if(B[i][j]==1) {cnt+=1;}}}for(int i = 0; i<n; ++i) {int x,y;x= A[i][0];y = A[i][1];for(int j = 0; j<n; ++j) {//计算当前树为左下角的小地图内的树总数int xLen = A[j][0] - x;int yLen = A[j][1] - y;if(xLen>=0&&xLen<=S&&yLen>=0&&yLen<=S) {A[i][2]+=1;temp[i][xLen][yLen] = 1;}}}int num = 0;for(int i = 0; i<n; ++i) {if(A[i][3]==-1||A[i][2]!=cnt) {continue;}bool flag = true;for(int j = 0; j<=S; ++j) {for(int k = 0; k<=S; ++k) {if(B[j][k]==1&&temp[i][j][k]!=B[j][k]) {flag = false;break;}}if(!flag) {break;}}if(flag) {num+=1;}}cout << num;return 0;
}
2.2、方法二(结构体储存)
思路:
构造一个树的结构题,其中储存以其为左下角构建的小地图,他在大地图中的坐标,以及它的地图是否越界,小地图中含有的树的数目,实现过程与方法一类似。
注意:边界判断
//第一次写80分,错在 x + S > L || y + S > L 多加了等于号
C++实现如下:
#include<iostream>
#include<vector>
using namespace std;
struct tree {int c[51][51];int view = 0;int cnt = 0;int x = 0;int y = 0;//int otherTree[1000];
};
vector<tree> t(1001);
// tree t[1000];int main() {int n, L, S;int giftCnt = 0;int gift[51][51];cin >> n >> L >> S;for (int i = 0; i < n; ++i) {int x, y;cin >> x >> y;t[i].x = x;t[i].y = y;//如果当前树为左下角的藏宝图越界,将其标记为-1//第一次写80分,错在 x + S > L || y + S > L 多加了等于号 if (x + S > L || y + S > L ) {t[i].view = -1;}}for (int i = S; i >= 0; --i) {for (int j = 0; j <= S; ++j) {cin >> gift[i][j];if(gift[i][j]==1) {giftCnt+=1;}}}for (int i = 0; i < n; ++i) {int x, y;x = t[i].x;y = t[i].y;for (int j = 0; j < n; ++j) {int xLen = t[j].x - x;int yLen = t[j].y - y;if (xLen >= 0 && xLen <= S && yLen >= 0 && yLen <= S) {t[i].c[xLen][yLen] = 1;t[i].cnt+=1;}}}int num = 0;for (int i = 0; i < n; ++i) {bool flag = false;if(t[i].view==-1||t[i].cnt!=giftCnt) {continue;}for (int j = 0; j <= S; ++j) {for (int k = 0; k <= S; ++k) {if (t[i].c[j][k] != gift[j][k]) {flag = true;break;}}if (flag) {break;}}if (!flag) {if (t[i].view != -1)num++;}}// for(int i = 0; i<n; ++i) {
// cout << "第" << i << "个藏宝图" << endl;
// cout << "该藏宝图拥有 " << t[i].cnt << " 棵树" << endl;
// if(t[i].view==-1) {
// cout << "他越界了 " << t[i].view << endl;
// } else {
// cout << "他没越界 " << t[i].view << endl;
// }
// for(int j = 0; j<=S; ++j) {
// for(int k = 0; k<=S; ++k) {
// cout << t[i].c[j][k] << ' ';
// }
// cout << endl;
// }
// cout << endl;
// }
//
// cout << "小明的藏宝图" << endl;
// for(int i = 0; i<=S; ++i) {
// for(int j = 0; j<=S; ++j) {
// cout<<gift[i][j] <<' ';
//
// }
// cout << endl;
// }
// cout << num;return 0;
}
2.3、方法三(map储存,int为key,map为value)
思路:
将大地图中的树的坐标存到c++的容器里,每次检查一棵树是否能作为有宝藏的地图时,就检查藏宝图内所有树的坐标是否都能在以这棵树为左下角的(S+1)*(S+1)区域内找到,如果可以便满足题目要求的条件。最后判断输出即可,是比较省时间省空间的做法。
同时,由于map是红黑树实现的,为有序的容器,由于此题并未对顺序做要求,所以可以使用由哈希表结构实现的unordered_map,进一步提高检索的效率。
unordered_map的头文件为#include<unordered_map>
C++实现如下:
#include<iostream>
#include<map>
#include<vector>
#include<unordered_map>
using namespace std;
// 使用的是map<int,map<int,int> > BigMp;int main() {int n,L,S;cin>>n>>L>>S;int x,y;unordered_map<int,int[4]> mp;unordered_map<int,int[2]> gift;
// map<int,vector<int> > mp;
// map<int,vector<int> > gift;
// vector<int> v[L];unordered_map<int,map<int,int> > BigMp; for(int i = 0; i<n; ++i) {cin >> x >> y;mp[i][0] = x;mp[i][1] = y;//储存当前树的横纵坐标在大地图中BigMp[x][y] = 1;if(x+S>L||y+S>L) {//表示以该树为左下角的地图越界mp[i][3] = -1;}}int giftNum = 0;for(int i = S; i>=0; --i) {for(int j = 0; j<=S; ++j) {int now = 0;cin>>now;if(now==1) {gift[giftNum][0] = i;gift[giftNum][1] = j;giftNum+=1;}}}for(int i = 0; i<n; ++i) {x = mp[i][0];y = mp[i][1];for(int j = 0; j<n; ++j) {int xLen = mp[j][0] - x;int yLen = mp[j][1] - y;if (xLen >= 0 && xLen <= S && yLen >= 0 && yLen <= S) {mp[i][2]+=1;}}}int num = 0;//遍历每一棵树for(int i = 0; i<n; ++i) {x = mp[i][0];y = mp[i][1];if(mp[i][3]==-1||mp[i][2]!=giftNum) {//当前树构成的小地图越界,或者小地图内含有的树的数量与藏宝图内的不符continue;}int flag = true;//遍历藏宝图中的每一棵树for(int j = 0; j<giftNum; ++j) {int gX = gift[j][0];int gY = gift[j][1];if( BigMp[x+gX][y+gY]!=1) {flag = false;break;}}if(flag) {num+=1;}}cout << num ;return 0;
}
2.4、方法四(map储存,pair为key,int为value)
思路:
与上一方法相同,只是容器的使用存在小小的区别
C++实现如下:
#include<iostream>
#include<map>
#include<vector>
using namespace std;
// 使用的是map<pair<int,int> ,int> BigMp;//可行 ,放里外都对 int main() {int n,L,S;cin>>n>>L>>S;int x,y;map<int,int[4]> mp;map<int,int[2]> gift;map<pair<int,int> ,int> BigMp;//可行 ,放里外都对 for(int i = 0; i<n; ++i) {cin >> x >> y;mp[i][0] = x;mp[i][1] = y;//储存当前树的横纵坐标在大地图中BigMp[make_pair(x,y)] = 1;if(x+S>L||y+S>L) {//表示以该树为左下角的地图越界mp[i][3] = -1;}}int giftNum = 0;for(int i = S; i>=0; --i) {for(int j = 0; j<=S; ++j) {int now = 0;cin>>now;if(now==1) {gift[giftNum][0] = i;gift[giftNum][1] = j;giftNum+=1;}}}for(int i = 0; i<n; ++i) {x = mp[i][0];y = mp[i][1];for(int j = 0; j<n; ++j) {int xLen = mp[j][0] - x;int yLen = mp[j][1] - y;if (xLen >= 0 && xLen <= S && yLen >= 0 && yLen <= S) {mp[i][2]+=1;}}}int num = 0;//遍历每一棵树for(int i = 0; i<n; ++i) {x = mp[i][0];y = mp[i][1];if(mp[i][3]==-1||mp[i][2]!=giftNum) {//当前树构成的小地图越界,或者小地图内含有的树的数量与藏宝图内的不符continue;}int flag = true;//遍历藏宝图中的每一棵树for(int j = 0; j<giftNum; ++j) {int gX = gift[j][0];int gY = gift[j][1];if( BigMp[make_pair(x+gX,y+gY)]!=1) {flag = false;break;}}if(flag) {num+=1;}}cout << num ;return 0;
}
三、遇到的问题
3.1、二维动态数组
使用该行代码 ,程序直接崩溃
vector<vector<int> > BigMp(1000000000,vector<int> (1000000000,0));
这段代码定义了一个名为 BigMp 的二维 vector,其中包含 10^18 个整数类型的元素,每个元素初始化为0。这里使用了 C++11 中引入的双大于号语法来表示嵌套的向量。
这段代码存在的问题是。它试图分配巨大的内存空间,超出了大部分机器的物理内存大小。由于每个 int 类型的变量通常占用4字节,因此将使用至少4000GB的内存,即使有处理这样多数据的计算机,也很可能会导致其他程序的崩溃或系统的不稳定。
所以不推荐在实际应用中使用这种方式来定义向量。如果需要创建一个大型二维数组,请考虑使用动态分配内存(例如使用 new)或将数据存储在磁盘上的文件中,以避免消耗过多的内存资源。
3.2、vector作为value
这种写法是很不推荐的,浪费空间 。
map<int,vector<int> > BigMp;//直接崩溃
3.3、结构体数组
这种结构体的写法,只能在main函数外部定义,因为其需要初始化。
tree t[1000];
建议使用下面这种实现方法。
vector<tree> t(1001);
相关文章:
CCF-202206-2-寻宝!大冒险!
目录 题目背景 问题描述 一、思路: 二、实现方法(C) 2.1、方法一(int储存) 思路: C实现如下: 2.2、方法二(结构体储存) 思路: 注意:边界…...
二叉搜索树中的众数
1题目 给你一个含重复值的二叉搜索树(BST)的根节点 root ,找出并返回 BST 中的所有 众数(即,出现频率最高的元素)。 如果树中有不止一个众数,可以按 任意顺序 返回。 假定 BST 满足如下定义&…...
认识JSP
什么是JSP? JSP(Java Server Pages)是一种类似于HTML的标记语言,用于创建动态Web页面。与HTML不同的是,JSP页面中可以嵌入Java代码,由Web服务器在动态页面中生成HTML代码,从而实现Web应用程序的前端交互效…...
MySQL数据管理
一、MySQL数据库管理 1、库和表 行(记录):用来描述一个对象的信息 列(字段):用来描述对象的一个属性 2、常用的数据类型 int :整型 float :单精度浮点 4字节32位 double &…...
第十九章 Unity 其他 API
本节介绍一些其他经常使用的Unity类。首先,我们回顾一下Vector3向量类,它既可以表示方向,也可以表示大小。它在游戏中可以用来表示角色的位置,物体的移动/旋转,设置两个游戏对象之间的距离。在我们之前的课程中&#x…...
sha256算法详解,用C语言模拟sha256算法
SHA-256是一种加密算法,它可以将任意长度的数据块计算出一个固定长度的输出值,通常是256位。SHA-256具有以下特点: 1. 固定输出长度:SHA-256的输出长度为256位,不受输入数据的长度限制。 2. 不可逆性:SHA-256采用单向哈希函数,即无法从输出值反向推出输入数据。 3. 抗…...
前端技术未来发展展望
前端技术在未来的发展中将继续保持快速、变化多样和创新性强的趋势。以下是我认为前端技术未来发展的几个方向: 框架和库的演进:框架和库的更新换代将继续加速。React、Vue、Angular等主流框架的更新周期将会缩短,同时各自的生态系统也将更加…...
第四十六天|dp
今天的题还是完全背包的题 139. Word Break 这道题其实用deque也能做,但是需要cache去记录之前尝试过的值,.相对简单的办法就是用完全背包了 这道题worddict就是物品.我们的dp[i]代表到i为止是不是能满足题意分成segmentation 处置化全为false,但是dp[0]True.这是因为为0时…...
汇编语言-复习自用
本文用于自我复习汇编语言,参考b站一位老师的讲解整理而成,感谢老师的无私付出视频链接链接 文章目录 1.第一章1.1计算机组成1.2读取1.3 寄存器及数据存储1.4 mov和and指令1.5 确定物理地址1.6 内存分段表示法1.7debug使用1.8CS:IP1.9jmp指令改变csip1.1…...
Android moneky自动点击应用设想
近期又有人发错私密消息到群聊天里,造成巨大反应的事件,可谓是一失手成大恨,名利受损。 而如果手机里安装一个monkey自动点击程序,没事的时候,跑跑monkey,倒一杯茶,静静的看手机屏幕在那里点击&…...
16.基于主从博弈理论的共享储能与综合能源微网优化运行研究
说明书 MATLAB代码:基于主从博弈理论的共享储能与综合能源微网优化运行研究 关键词:主从博弈 共享储能 综合能源微网 优化调度 参考文档:《基于主从博弈理论的共享储能与综合能源微网优化运行研究》完全复现 仿真平台:MATLAB …...
使用 ESP32 设计智能手表第 2 部分 - 环境光和心率传感器
我们研究了如何为我们的智能手表项目制作一些有趣的表盘。在这一部分中,我们将研究如何将一些传感器连接到我们的智能手表,并将连接 BH1750 环境光传感器和 MAX30102 心率传感器。我们将分别研究这些模块中的每一个的接口。 先决条件——安装必要的库 本文下方提供的 GitHub …...
分布式事务 --- 理论基础、Seata架构、部署
一、分布式事务问题 1.1、本地事务 本地事务,也就是传统的单机事务。在传统数据库事务中,必须要满足四个原则: 1.2、分布式事务 分布式事务,就是指不是在单个服务或单个数据库架构下,产生的事务,例如&am…...
低代码开发重要工具:JVS列表页字段样式配置说明
列表页中,通常存在各种各样的样式控制,例如字段宽度需要可调、字段的颜色根据内容变化等,那么我们接下来介绍下字段的样式控制的内容以及对应的效果。 1、字段样式控制配置位置 进入列表页的 数据配置界面,每个字段可以有独立的配…...
explain结果字段分析
select_type simple:表示不需要union操作或者不包含子查询的简单select语句。有连接查询时,外层的查询为simple且只有一个。 primary:一个需要union操作或者含有子查询的select,位于最外层的单位查询的select_type即为primary且只…...
MySQL连接查询
MySQL连接查询 在多表联合查询时,为了减少查询的次数,使用连接查询可以一次查询多个相关联表的数据。 MySQL连接查询:分为内连接查询和外连接查询。 其中外连接查询又分成 left连接查询 和 right连接查询。 下午为两张数据库表,表…...
7. Docker——Dockerfile
本章讲解知识点 DockerfileDockerfile 常用命令Dockerfile 综合示例Docker Compose当我们理解了镜像的基本原理后,我们就可以开始 Dockerfile 的学习了。 1. Dockerfile Dockerfile 是用于构建 Docker 镜像的脚本。它包含一组指令,按顺序执行以创建 Docker 镜像,从而使其可…...
Input事件在应用中的传递(一)
Input事件在应用中的传递(一) hongxi.zhu 2023-4-25 前面我们已经梳理了input事件在native层的传递,这一篇我们接着探索input事件在应用中的传递与处理,我们将按键事件和触摸事件分开梳理,这一篇就只涉及按键事件。 一、事件的接收 从前面的…...
我在VScode学Java(Java一维数组)
我的个人博客主页:如果\真能转义1️⃣说1️⃣的博客主页 关于Java基本语法学习---->可以参考我的这篇博客:(我在Vscode学Java) 我在VScode学Java(Java一维数组) Java 一维数组 声明数组:先声明,后使用 动态分配内…...
不能使用chatGPT?这3个平替甚至比chatGPT更强
不能使用chatGPT?这3个平替甚至比chatGPT更强 chatGPT,一款由OpenAI开发的新型AI聊天机器人,正在势如破竹地改变着许多人的工作和生活方式。作为一款基于大语言模型的聊天机器人,chatGPT能够理解自然语言并进行人机对话。与传统的…...
基于SLM调制器,MIT研发高效率全息显示方案
此前,青亭网曾报道过NVIDIA、三星、剑桥大学等对空间光调制器(SLM)全息方案的探索。空间光调制器可调节光波的空间分布,在电驱动信号控制下,可改变光在空间中传播的振幅、强度、相位、偏振态等特性,从而形成…...
【Docker】镜像与docker数据卷
文章目录 一、镜像1、镜像2、镜像原理之联合文件系统3、镜像原理之分层4、commit镜像 二、数据卷1、数据卷2、-v使用数据卷3、实战:MySQL 同步数据4、docker volume相关指令5、匿名和具名挂载6、数据卷之Dockerfile7、数据卷容器 一、镜像 1、镜像 镜像是一种轻量级…...
机器学习小结之KNN算法
文章目录 前言一、概念1.1 机器学习基本概念1.2 k 值1.3 距离度量1.4 加权方式 二、实现2.1 手写实现2.2 调库 Scikit-learn2.3 测试自己的数据 三、总结3.1 分析3.2 KNN 优缺点 参考 前言 KNN (K-Nearest Neighbor)算法是一种最简单,也是一个很实用的机器学习的…...
函函函函函函函函函函函数——two
🤩本文作者:大家好,我是paperjie,感谢你阅读本文,欢迎一建三连哦。 🥰内容专栏:这里是《C知识系统分享》专栏,笔者用重金(时间和精力)打造,基础知识一网打尽,…...
SpringCloud学习笔记06
九十五、Cloud Alibaba简介 0、why会出现SpringCloud alibaba Spring Cloud Netflix项目进入维护模式 1、是什么 官网:spring-cloud-alibaba/README-zh.md at 2.2.x alibaba/spring-cloud-alibaba GitHub 2、能干嘛 3、去哪下 spring-cloud-alibaba/README-…...
学系统集成项目管理工程师(中项)系列14_采购管理
1. 概念和术语 1.1. 采购是从项目团队外部获得产品、服务或成果的完整的购买过程 1.2. 三大类 1.2.1. 工程 1.2.2. 产品/货物 1.2.3. 服务 2. 主要过程 2.1. 编制采购管理计划 2.2. 实施采购 2.3. 控制采购 2.4. 结束采购 3. 合同 3.1. 包括买方和卖方之间的法律文…...
PMP课堂模拟题目及解析(第3期)
21. 一家农业设备制造商因一个缺陷部件而召回数千个产品。这个问题导致许多客户不满,公司花费 500 万美元来修理和更换零件。哪一种成本预算类型可以防止这个问题? A. 非一致性成本 B. 一致性成本 C. 矩阵图 D. 多标准决策分析 22. 一位团队成员…...
华为OD机试 - 微服务的集成测试( Python)
题目描述 现在有n个容器服务,服务的启动可能有一定的依赖性(有些服务启动没有依赖),其次服务自身启动加载会消耗一些时间。 给你一个 n x n 的二维矩阵useTime,其中 useTime[i][i]=10 表示服务i自身启动加载需要消耗10s useTime[i][j] = 1 表示服务i启动依赖服务j启动完…...
SLAM面试笔记(4) — 企业面试汇总
目录 1 大疆 一面(50min) 二面(30min) 三面(30min) 2 华为 一面(30min) 二面(30min) 三面(30min) 3 海康 一面(…...
五大新兴产业中,有三个中国出口全球占比居首-机器视觉工程师正处于需求旺盛阶段
五大新兴产业包含生物保健和电动汽车,新一代半导体、新一代显示器、二次电池。 在五大新兴产业中的三大领域——新一代半导体、新一代显示器、二次电池,中国对外出口在全球所占比重最高。 电动汽车,汽车行业一直对机器视觉工程师有着强烈的需求,无论比亚迪,特斯拉等等…...
怎么才能注册做网站/网站设计优化
下载android应用的apk文件变成了zip--网上转载的解决方案 下载android应用的apk文件变成了zip--网上转载的解决方案 解决方案一、 最近把开发的android应用放在公司网站上,用IE下载后遇到了问题:扩展名.APK文件点击下载后却变成了.ZIP文件,…...
建网站底部怎么做的/独立站seo怎么做
一、修改httpd.conf文件 编辑配置文件: 目录:%xampp\apache\conf\httpd.conf#确认以下是否开启Include conf/extra/httpd-vhosts.conf#修改<Directory />参数<Directory />#AllowOverride none#Require all deniedOptions AllAllowOverride …...
苏州h5网站建设/软文案例500字
SpringBoot web开发 springboot使用: 1)创建SpringBoot应用,选择需要的模块 2)SpringBoot 已经默认将这些选中的场景配置好了(之前学的自动配置功能),只需要在配置文件中指定少量配置就可以运行起来 3&am…...
专业电子科技网站建设/网站友情链接美化代码
大家好!我是小雨老师。为了帮助孩子们学好北师大版数学新教材,继续推出全新栏目——同步数学微课堂(包括教学视频、知识要点解读、同步练习等),欢迎大家分享收藏哦~1--6年级下册语文、数学、英语电子课本点击观看☞:部编版语文1--…...
常见网站结构/百度百科入口
应该是可以这样说吧!接触电脑长时间了,但是还有人会不知道键盘上F1到F12都有什么作用。不过不知道的都没有关系,我想应该没有几个人能全部说出来,那么下面大家一起给大家带来电脑基础也就是电脑键盘上F1到F12都有什么作用我做了一…...
网站建设收费标准市场/网站统计数据
原创!ngxtop-监控nginx的利器!!! 无论名称还是界面,ngxtop的灵感均源自大名鼎鼎的top命令.ngxtop的功能就是,分析Nginx访问日志文件(以及其他日志文件,比如Apache2日志),并通过类似top的界面,实时显示分析后所得的结果.你可能吹嘘自己的综合监控工具拥有…...