标签:adf 目的 com print name 使用 des i++ names
题目描述
左图为第一堆泥土的初始形态,右图为第二堆泥土的初始形态,颜色代表了一种可行的移动方案,使得第一堆泥土的形态变成第二堆泥土的形态
输入测试组数T,每组测试数据,第一行输入n,1<=n<=100000,紧接着输入两行,每行n个整数,前一行为a1, a2,…,an,后一行为b1,b2,…,bn.其中0<=ai,bi<=100000,1<=i<=n,数据保证
对于每组数据,输出一行,将a土堆的形态变成b土堆的形态所需要花费的最小体力
2 3 0 0 9 0 2 7 3 1 7 6 6 6 2
2 9
其实就是一道推公式的题,之前在比赛的时候我们所使用的方法很麻烦,所以在这附上某位大神的做法。
#include<bits/stdc++.h> using namespace std; const int M=1e5+5; int a[M],b[M]; int main() { int n,t,i; cin>>t; while(t--) { scanf("%d",&n); for(i=1;i<=n;i++) scanf("%d",&a[i]); long long s=0,x=0; for(i=1;i<=n;i++) { scanf("%d",&b[i]); x+=a[i]-b[i]; if(x>0) s+=x; else s-=x; } printf("%lld\n",s); } return 0; }
【Nowcoder 上海五校赛】Wasserstein Distance
标签:adf 目的 com print name 使用 des i++ names
原文地址:https://www.cnblogs.com/kannyi/p/8855382.html