Đưa ra hai danh sách số nguyên không trống , bài nộp của bạn sẽ tính toán và trả về tích chập riêng của hai số nguyên. Thật thú vị, nếu bạn coi các yếu tố danh sách là hệ số của đa thức, thì tích chập của hai danh sách đại diện cho hệ số của sản phẩm của hai đa thức.
Định nghĩa
Đưa ra các danh sách A=[a(0),a(1),a(2),...,a(n)]
và B=[b(0),b(1),b(2),...,b(m)]
(cài đặt a(k)=0 for k<0 and k>n
và b(k)=0 for k<0 and k>m
) sau đó tích chập của hai được xác định là A*B=[c(0),c(1),...,c(m+n)]
nơic(k) = sum [ a(x)*b(y) for all integers x y such that x+y=k]
Quy tắc
- Bất kỳ định dạng đầu vào và đầu ra thuận tiện cho ngôn ngữ của bạn đều được cho phép.
- Không được phép xây dựng để tích chập, tạo ma trận tích chập, tương quan và nhân đa thức.
Ví dụ
[1,1]*[1] = [1,1]
[1,1]*[1,1] = [1,2,1]
[1,1]*[1,2,1] = [1,3,3,1]
[1,1]*[1,3,3,1] = [1,4,6,4,1]
[1,1]*[1,4,6,4,1] = [1,5,10,10,5,1]
[1,-1]*[1,1,1,1,1] = [1,0,0,0,0,-1]
[80085,1337]*[-24319,406] = [-1947587115,7,542822]
[1,1]*[] = []
và không thể giữ được[]*[] = ?
. Convolution không được xác định rõ trong danh sách trống. Tôi nghĩ bạn nên đảm bảo rằng danh sách đầu vào là không trống.