CCF--稀疏向量
为什么才60分呢?不要太迷惑
#include<iostream>
using namespace std;
struct vec{
int index;
int val;
}vec;
int main(){
int a, b, n;
cin >> n >> a >> b;
struct vec u[a];
struct vec v[b];
for(int i = 0; i < a; i++){
cin >> u[i].index >> u[i].val ;
}
for(int i = 0; i < b; i++){
cin >> v[i].index >> v[i].val ;
}
long long sum = 0;
int m = 0, k = 0;
while(m < a && k < b){
if(u[m].index == v[k].index){
sum += u[m].val * v[k].val;
m++;
k++;
}else{
if(u[m].index > v[k].index){
k++;
}else{
m++;
}
}
}
cout << sum << endl;
}