<오답>
t = int(input())
for tc in range(1, t+1) :
n,m= map(int, input().split())
a = list(map(int, input().split()))
b = list(map(int, input().split()))
result = 0
if n == m:
for i in range(n):
result += a[i]*b[i]
else:
if n > m:
c = n-m
a = a[c:]
for i in range(len(a)):
result += a[i]*b[i]
else:
c = m-n
b = b[c:]
for i in range(len(b)):
result += a[i]*b[i]
print(f'#{tc} {result}')
# 생각도 안하고 긴쪽 오른쪽에 맞춰서 짧은 범위만큼만 곱해주면 되는 문제인 줄 알았지만.... 다 더한 값의 max값을 출력하는 것이었다.
<정답>
T = int(input())
for tc in range(1, T+1):
N, M = map(int, input().split())
nList = list(map(int, input().split()))
mList = list(map(int, input().split()))
result = 0
if N > M:
for i in range(N-M+1):
tmp = 0
for j in range(M):
tmp += mList[j] * nList[i+j]
if tmp > result:
result = tmp
else:
for i in range(M - N+1):
tmp = 0
for j in range(N):
tmp += nList[j] * mList[i + j]
if tmp > result:
result = tmp
print(f'#{tc} {result}')
'문제풀이 > SW Expert Academy' 카테고리의 다른 글
[SWEA][D2] 1284. 수도 요금 경쟁 (파이썬/Python) (0) | 2021.09.17 |
---|---|
[SWEA][D2] 1940. 가랏! RC카! (파이썬/Python) (0) | 2021.09.07 |
[SWEA][D2] 1961. 숫자 배열 회전 (파이썬/Python) (0) | 2021.09.02 |
[SWEA][D2] 1966. 숫자를 정렬하자 (파이썬/Python) (0) | 2021.09.02 |
[SWEA][D2] 1970. 쉬운 거스름돈 (파이썬/Python) (0) | 2021.09.02 |