gpt4 book ai didi

c++ - 我们如何找到给定子矩阵中不同元素的数量?

转载 作者:行者123 更新时间:2023-11-30 21:46:50 24 4
gpt4 key购买 nike

给定一个 N*N 矩阵,并对同一给定矩阵进行 Q 次查询。每个查询的形式为 x1,y1,x2,y2。我们必须找到分别由 (x1,y1) 和 (x2,y2) 定义为左上角和右下角的子矩阵中不同元素的数量。约束:N<=300Q<=10^5我使用简单的方法迭代每个查询的子矩阵。有没有更好的方法?

最佳答案

这取决于您可以预期的查询数量,以及您可以预期的相同查询的数量。

一种方法是“内存”查询,简单地存储每个查询和结果,并在进行更认真的工作之前进行查找。

一种更针对特定问题的方法(可能是您的老师所追求的)是为每个 (right,bottom)=(x,y) 计算 (0, 0, x, y) 的不同元素。然后用简单的集合论来处理每个查询。但进行原始计算非常耗时。

请记住添加对此答案的引用。

关于c++ - 我们如何找到给定子矩阵中不同元素的数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20487406/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com