[白駿2143]-Python


  • 居アルス4週目ソート、二分探索-1/5
  • 2143両配列の和
    ソートは、ディック・シャナリーを利用しました.
    from collections import defaultdict
    n = int(input())
    aNo = int(input())
    a = list(map(int, input().split()))
    bNo = int(input())
    b = list(map(int, input().split()))
    
    aSum = defaultdict(int)
    answer = 0
    
    for i in range(aNo):
        for j in range(aNo):
            if i<=j:
                aSum[sum(a[i:j+1])]+=1
    
    for i in range(bNo):
        for j in range(bNo):
            if i<=j:
                answer+=aSum[n-sum(b[i:j+1])]
    
    print(answer)