华为OD机试-多个数组合并

这篇博客介绍了如何解决一个算法问题,即如何合并多个整数数组成一个新的数组,按照固定长度依次从每个数组中取出元素。博主分析了问题的重点在于循环嵌套,并给出了代码实现示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题目描述

现在有多组整数数组,需要将他们合并成一个新的数组,合并规则从每个数组里按顺序取出固定长度的内容
合并到新的数组,取完的内容会删除掉,如果改行不足固定长度,或者已经为空,则直接取出剩余部分的内容放到新的数组中继续下一行

输入描述
第一 行每次读取的固定长度,长度0<len<10
第二行是整数数组的数目,数目 0<num<10000
第3~n行是需要合并的数组,不同的数组用换行分割,元素之间用逗号分割,最大不超过100个元素

输出描述
输出一个新的数组,用逗号分割

示例1
输入
3
2
2,5,6,7,9,5,7
1,7,4,3,4
输出
2,5,6,1,7,4,7,9,5,3,4,7

说明  获得长度3和数组数目2,先遍历第一行 获得2,5,6,再遍历第二行 获得1,7,4,再循环回到第一行获得7,9,5
再遍历第二行获得3,4,再回到第一行获得7

示例2
输入
4
3
1,2,3,4,5,6
1,2,3
1,2,3,4
输出
1,2,3,4,1,2,3,1,2,3,4,5,6

分析

主要搞清楚循环的嵌套,弄清楚内外循环就可以像切矩阵那样大刀阔斧,切好的顺着排即为结果。

以示例1为例:

 代码实现

# Python3
k = int(input())
n = int(input())
L = [list(map(int, input().split(","))) for _ in range(n)]
c = [len(row
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值