Gifts Fixing solution
题意:
分别找到 a 类和 b 类中的最小值,判断当前 a 和 b 变到最小值的最大值,最后累加即可。
#include<iostream> using namespace std; const int maxn=1e6+20; int a[100],b[100]; #define inf 0x3f3f3f3f typedef long long ll; int main() { int t; cin>>t; while(t--) { int n; cin>>n; int bmin=inf,amin=inf; for(int i=1;i<=n;i++) { cin>>a[i]; amin=min(amin,a[i]); } for(int j=1;j<=n;j++){ cin>>b[j]; bmin=min(bmin,b[j]); } ll ans=0; for(int i=1;i<=n;i++) { int aret=a[i]-amin; int bret=b[i]-bmin; ans+=max(aret,bret); } cout<<ans<<endl; } }