题意
c i = { a i b i i f a i > b i 0 i f a i = b i − a i b i i f a i < b i c_i=\begin{cases} a_ib_i\quad ifa_i>b_i\\ 0\quad \quad ifa_i=b_i\\ -a_ib_i\quad ifa_i<b_i \end{cases} ci=⎩⎪⎨⎪⎧aibiifai>bi0ifai=bi−aibiifai<bi
根据a数组和b数组相应关系定为权值,求最大权值和
思路
我们看到要想有收入只能 a a a为2, b b b为1。那么我们只要最小化支出的情况也就是 a a a为1, b b b为2。
所以我们尽可能的减少消耗,就都用来减少 b b b数组的2
#include<bits/stdc++.h>
using namespace std;
void solve(){
int x1,y1,z1,x2,y2,z2;
cin>>x1>>y1>>z1>>x2>>y2>>z2;
int sum=0;
int t=min(x1,z2);
x1-=t,z2-=t;
int q=min(z1,z2);
z1-=q,z2-=q;
int r=min(z1,y2);
z1-=r,y2-=r;
int s=min(y1,z2);
sum=2*r-2*s;
cout<<sum<<endl;
}
int main(){
int t;cin>>t;
while(t--){
solve();
}
}