lzj20110120 @ 2024-01-24 10:17:55
五彩斑斓
#include <bits/stdc++.h>
using namespace std;
long long m,n,a[1000000],b[1000000],sum,c[1000000];//sum为不满意度
int main()
{
cin>>m>>n;
for(int i=1;i<=m;i++)
{
cin>>a[i];
}
for(int i=1;i<=n;i++)
{
cin>>b[i];
}//输入
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
c[j]=abs(a[j]-b[j]);//求每一所大学对于每个学生的不满意度
}
sort(c,c+m);//排序
sum+=c[1];
}
cout<<sum<<endl;
}
无论有没有帮助,都会关注
by _Clown__ @ 2024-01-24 10:24:17
@lzj20110120
c[j]=abs(a[j]-b[j]);
把b[j]改为b[i]能过样例
TLE的话最好用二分来写
by _Clown__ @ 2024-01-24 10:26:31
@lzj20110120
by _Clown__ @ 2024-01-24 10:27:49
也可以用队列+贪心
by lzj20110120 @ 2024-01-24 10:40:03
@_Clown__ 谢谢,我去试试
已关