//
// main.cpp
// 8.18
//
// Created by 郭晋龙 on 2021/8/18.
//
#include<iostream>
#include<cstdio>
#include<vector>
long long ans;
using namespace std;
vector<pair<int,int>> u,v;
int main(){
int n,a,b;
cin>>n>>a>>b;
int id,val;
for(int i=0;i<a;i++){
cin>>id>>val;
u.push_back({id,val});
}
for(int i=0;i<b;i++){
cin>>id>>val;
v.push_back({id,val});
}
int i,j;
i=0;j=0;
while(i<a&&j<b){
if(u[i].first==v[j].first){
{ ans+=u[i].second*v[j].second;
i++;
j++;
}
}
else if(u[i].first>v[j].first){
j++;
}
else i++;
}
printf("%lld\n", ans);
return 0;
}
202006-2 稀疏向量
最新推荐文章于 2024-01-26 21:06:10 发布
这是一个C++程序,用于计算两个数组中相同ID对应元素的乘积之和。程序读取两个数组,分别存储在`u`和`v`向量中,然后通过遍历找到相同ID的元素并计算乘积,最后输出总和。

6974

被折叠的 条评论
为什么被折叠?



