Giả sử chúng ta có một danh sách n phần tử; chúng ta phải lặp lại mỗi phần tử trong danh sách n lần.
Vì vậy, nếu đầu vào là nums = [1,5,8,3], thì đầu ra sẽ là [1, 1, 1, 1, 5, 5, 5, 5, 8, 8, 8, 8, 3, 3, 3, 3].
Để giải quyết vấn đề này, chúng ta sẽ làm theo các bước sau:
- n := kích thước nums
- ret := một danh sách mới
- với mỗi num trong nums, thực hiện
- ret := ret nối thêm danh sách với n lần num
- trả về ret
Ví dụ
Hãy xem triển khai sau để hiểu rõ hơn:
def solve(nums):
n = len(nums)
ret = []
for num in nums:
ret += [num]*n
return ret
nums = [1,5,8,3]
print(solve(nums))
Đầu vào
[1,5,8,3]
Đầu ra
[1, 1, 1, 1, 5, 5, 5, 5, 8, 8, 8, 8, 3, 3, 3, 3]