gpt4 book ai didi

c++ - 用两点映射一维数组

转载 作者:行者123 更新时间:2023-11-30 03:29:03 25 4
gpt4 key购买 nike

我想使用 2 点映射存储一维数组 arr 的随机快照,例如 a,b 以便在动态程序中使用。喜欢说

P1 => (4,5)   = [1,1,0,2,1]
P2 => (10,13) = [5,6,3,4,3]
P3 => (15,23) = [11,13,9,12,14]

等等……稍后我需要将它们添加到数组 A 中,数组 A 也有 n 个元素,比如 arr。比如说 A = [1,1,1,1,1]

所以现在在 P1 之后我有 A 为:[2,2,1,3,2] 依此类推直到 P 结束.我不确定如何将这些点 P1,P2 ... 映射到数组 arr ,然后再将其与数组 A 相加。我尝试使用 3D 数组来存储这些点,然后存储数组。但它看起来很笨重并且没有以有效的方式使用。感谢您的帮助。

最佳答案

你可以使用一个

std::map<std::pair<int, int>, std::vector<int>> m;

然后您可以将其用作 m[{10, 20}].push_back(42);

例如,问题中的数据可以存储在

m[{4, 5}] = {1, 1, 0, 2, 1};
m[{10, 13}] = {5, 6, 3, 4, 3};
m[{15, 23}] = {11, 13, 9, 12, 14};

关于c++ - 用两点映射一维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46011253/

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