很明显唯有的正数就是(2,1),而(1,2)则是唯有的负数,剩下的0和1对结果不会造成影响,故对a队列的2,0分别与b队列的1,2作为衡量标准,达成组合(2,1)与(0,2)即可。
#include<bits/stdc++.h> using namespace std; int main() { long long t,sum=0,cnt=0; cin>>t; while(t--) { long long x1,y1,z1,x2,y2,z2; cin>>x1>>y1>>z1>>x2>>y2>>z2; if(z1>=y2&&x1>=z2) { sum=2*y2; } else if(z1>=y2&&x1<z2) { sum=2*y2; if(z1-y2<z2-x1) { sum-=2*(z2-x1-z1+y2); } } else if(z1<y2&&x1>=z2) { sum=2*z1; } else if(z1<y2&&x1<z2) { sum=2*z1-2*(z2-x1); } cout<<sum<<endl; sum=0; } return 0; }