문제

문제 2019

Discrete Convolution

시간 제한 3.000초 메모리 제한 128MB

문제 설명

합성곱 (Convolution)은 신호 및 시스템, 디지털 처리 등 다양한 분야에서 쓰인다.
특히 인공지능 쪽으로는 합성곱 신경망 (Convolution Neural Network, CNN)에 응용되는 개념이다.

두 벡터 A,B에 대해, 이산 합성곱 (Discrete Convolution) C는 다음과 같이 정의된다.

\( A * B = C , c_k = \underset{- \infty}{\overset{\infty}{\sum}} a_i b_{k-i} \)

두 벡터 A와 B가 주어졌을 때, 합성곱 C를 구하는 프로그램을 작성하시오.

입력 설명

첫째 줄에 A의 원소의 개수 n이 주어진다. 
둘째 줄에 A의 원소가 공백을 두고 주어진다. 

셋째 줄에 B의 원소의 개수 m이 주어진다. 
넷째 줄에 B의 원소가 공백을 두고 주어진다.

출력 설명

첫째 줄에 C의 원소를 공백을 두고 순서대로 주어진다. 
이때, C의 원소는 1번째 원소부터 n+m-1번째 원소까지만 출력한다.

입력 예시

2
1 2
2
1 3

출력 예시

1 5 6

출처

jbs33_PJW