Background
这确实只是一道简单的矩阵乘法……
Description
稀疏矩阵乘法在实际应用中十分重要,在本题中你将被要求实现关于它的一个简单算法。
给定一个n×m的整系数稀疏矩阵A∈Mn×m(Z),以及一个m×n的稀疏矩阵B∈Mm×n(Z),我们可以得到它们的乘积C=AB∈Mn×n(Z)。
为了简单起见,稀疏矩阵利用COO形式(坐标形式)给出:对于矩阵A,我们给定一个p,表示矩阵A只有p个元素非零,然后我们将给出这p个非零元的具体信息;对于矩阵B,q个非零元也类似地给出。
由于C的尺寸可能很大,所以在本题中我们只关心它的迹,即tr C=i=1∑nCii。
第一行依次给出四个正整数n,m,p,q,其中n,m为矩阵的尺寸,其意义如题意所示。
接下来p行,每行三个整数xi,yi,zi,每行表示A矩阵的一个非零元Axi,yi=zi,数据保证1≤xi≤n,1≤yi≤m,并且点对(xi,yi)两两不同。
接下来q行,每行三个整数xi,yi,zi,每行表示B矩阵的一个非零元Bxi,yi=zi,数据保证1≤xi≤m,1≤yi≤n,并且点对(xi,yi)两两不同。
Output
输出一行一个整数,表示乘积矩阵C的迹,即tr AB的值。
Samples
5 5 3 4
1 2 3
4 5 6
5 3 -6
2 4 9
5 3 8
3 5 -2
2 1 4
24
Limitation
1≤n,m,p,q≤105
∣zi∣≤106
Explanation
A=00000300000000−60000000060
B=0400000000000080900000−200
C=12000000000000480270000000012