2026-01-17 22:32:05 +09:00

50 lines
897 B
Python

import sys
input = sys.stdin.readline
T = int(input())
n, A = int(input()), list(map(int, input().split()))
m, B = int(input()), list(map(int, input().split()))
sumA = []
for i in range(n) :
currentSum = 0
for a in A[i:] :
currentSum += a
sumA.append(currentSum)
sumB = []
for i in range(m) :
currentSum = 0
for b in B[i:] :
currentSum += b
sumB.append(currentSum)
sumA.sort()
sumB.sort()
L, R = 0, len(sumB) - 1
ans = 0
while L < len(sumA) and R >= 0 :
a, b = sumA[L], sumB[R]
if a + b == T:
na = 0
while L < len(sumA) and a == sumA[L] :
L += 1
na += 1
nb = 0
while R >= 0 and b == sumB[R] :
R -= 1
nb += 1
ans += na*nb
else :
if a + b > T :
R -= 1
else :
L += 1
print(ans)