整数对最小和,暴力存储所有数组,再放容器sort一下,accumulate(s1.begin(),s2.begin()+k,0)即可。
#include <bits/stdc++.h>
using namespace std;
//最小和问题,求出所有整数对求和,排序即可
int main()
{
int n1,n2;
cin>>n1;
int s1[n1];
for(int i=0;i<n1;i++)
{
cin>>s1[i];
}
cin>>n2;
int s2[n2];
for(int i=0;i<n2;i++)
{
cin>>s2[i];
}
int k;
cin>>k;
vector<int> cou;
for(int i=0;i<n1;i++)
{
for(int j=0;j<n2;j++)
{
cou.emplace_back(s1[i]+s2[j]);
}
}
sort(cou.begin(),cou.end());
cout<<accumulate(cou.begin(),cou.begin()+k,0);//0为累加的初始值
return 0;
}
原文地址:https://blog.csdn.net/m0_57195330/article/details/145111407
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!