学到了新知识点:vector里的pair用法:
vector < pair<int,int> > u,v;
我的代码&#xff1a;只有60分&#xff0c;运行也正确
#include
#include
using namespace std;int main()
{int n, a, b;cin >> n >> a >> b;int* u &#61; new int[n];int* v &#61; new int[n];for (long i &#61; 0; i < n; i&#43;&#43;){u[i] &#61; 0;v[i] &#61; 0;}for (long m &#61; 0; m< a; m&#43;&#43;) {long aa, bb;cin >> aa >> bb;u[aa-1] &#61; bb;}for (long j &#61; 0; j < b; j&#43;&#43;) {long cc, dd;cin >> cc >> dd;v[cc-1] &#61; dd;}long long int sum &#61; 0;for (long k &#61; 0; k < n; k&#43;&#43;)sum &#43;&#61; (long long int)u[k] * (long long int)v[k];cout << sum;return 0;
}
参考了别人的&#xff1a;
#include
#include
using namespace std;
int main()
{int n,a,b;cin>>n>>a>>b;vector < pair<int,int> > u,v;int index,value;for(int i&#61;0;i<a&#43;b;i&#43;&#43;){cin>>index>>value;if(i<a)u.push_back({index,value});elsev.push_back({index,value});}long long int res&#61;0;int i&#61;0,j&#61;0;while(i<a&&j<b){if(u[i].first&#61;&#61;v[j].first){res&#43;&#61;u[i].second*v[j].second;i&#43;&#43;;j&#43;&#43;;}else if(u[i].first<v[j].first)i&#43;&#43;;elsej&#43;&#43;;}cout<<res;return 0;
}
发现自己的没有符合题目要求&#xff1a;
题目讲的是
提到了要用&#xff08;index,value&#xff09;的形式&#xff0c;我们就需要构造这样的形式