如果您知道 1 的位置,请查找被 1 包围的零数
Find number of zeros surrounded by ones if you know positions of ones
我正在做一个编程挑战,在这个挑战中,我必须找到被一包围的零的数量。
我给出了:
行数和列数r
和c
一的位置数n
n
位置i j
其中i
是行的索引,j
是列的索引
例如,如果我有
011110 010001 010001 001110 000000
然后我返回6
.
有 3 个测试输入集。在前两组中r, c <= 1000
.我设法通过使用 DFS 来传递前两组,以找出没有被 1 包围的零数(从边界开始)。因此,零的数量z = r * c - k - n
其中k
是没有被 1 包围的零的数量。
但是在第三种情况下,如果我在开始时创建二维向量,r, c <= 10^18
它甚至不适合内存。我还注意到n
在所有集合中都相对较小(n <= 10^6
)。
我的问题是如何为所有测试集解决这个问题?
在知道墙壁在哪里的同时计算房间 在这里,您可以找到计算被墙壁包围的房间的结果(在您的例子中为"1"),您必须更改代码,它计算"0"的数量。但想法是一样的。通过 bfs 或 dfs 制作。
相关文章:
- 正在查找文档以获得PS4平台的C++中的设备信息
- 在C++中查找文件
- 模板元程序查找相似的连续类型名称
- 在UNIX系统中使用DIR查找文件的字节大小
- 查找最接近的大于当前数字的数字的索引
- 有没有一种方法可以创建一个带有哈希表的数据库,该哈希表具有恒定时间查找功能
- 查找后更改类变量
- 使用正则表达式regex_search在字符串中查找字符串
- 使用gcc从静态链接的文件中查找可选符号
- 在C++中查找范围的长度
- 算法问题:查找从堆栈中弹出的所有序列
- 在Windows中查找扬声器输出的当前音量级别
- 如何在C++中使用X509证书模在令牌中查找私钥
- 使用.find函数在c++中查找字符和另一个字符之间的大小
- 在 Windows 上,是否可以让 dll 在不使用 PATH 环境变量的情况下在另一个文件夹中查找依赖项?
- 在 for 循环中查找问题时遇到困难
- 如何在文件中查找字节序列
- 试图创建一个多线程程序来查找0-100000000之间的总素数
- 使用堆查找第K个最大元素的时间复杂性
- 如果您知道 1 的位置,请查找被 1 包围的零数