B. Ternary Sequence

题意

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=biaibiifai<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();
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值