大家好,这里的代码天才们,我会尽可能简单地解释我的问题
图像1
要生成image1,假设需要一个如下所示的数组,请记住数字从左到右放置在第一行中,然后在第二行中向后放置,如果您添加了更多的数字,它将创建第三行。
int[] something = {1, 2, 3, 2, 1, 2, 1, 3, 3, 1, 1, 2}
所以我想做一个布局的“Map”,就像下面这个期望的输出。
2 1 1 3 3 1
1 2 3 2 1 2
然后我想从这里找到每列的总数,就像这样。
2 1 1 3 3 1
1 2 3 2 1 2
..................
3 3 4 5 4 3
(然后我想在另一个数组中存储此布局和总和)
希望这一切都是有意义的,如果是的话,我该怎么做呢?
感谢堆:)
3条答案
按热度按时间zdwk9cvp1#
juud5qan2#
似乎可以使用二维数组数据结构来解决此问题:
如果只能使用一维数组:
记住保持一致
row_size
将那些未决定的元素设置为0。在这种情况下,应该初始化数组,如下所示:
zzoitvuj3#
如果我读对了,如果l是数组的长度,你想把数组的第n个和第l-1-n个元素相加,然后把结果存储在一个数组中。我很快就看完了,所以我没有处理输入数组长度奇数时会发生什么情况(您的问题没有具体说明)。
编辑:我认为这适用于任意行数的情况。这项工作的主要内容在下面的网格中。
因此,输出索引是向上还是向下是由行号决定的,每次我们碰到与输出数组大小相同的输入索引时,我们都需要保持在相同的输出索引。