CodeForces - 912A

本文介绍了一种基于魔法水晶的高效球体制作方法,并通过具体案例解析了所需额外材料的计算过程。针对不同颜色球体的需求,文章详细阐述了黄色、绿色及蓝色球体所需的材料配比。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

During the winter holidays, the demand for Christmas balls is exceptionally high. Since it's already 2018, the advances in alchemy allow easy and efficient ball creation by utilizing magic crystals.

Grisha needs to obtain some yellow, green and blue balls. It's known that to produce a yellow ball one needs two yellow crystals, green — one yellow and one blue, and for a blue ball, three blue crystals are enough.

Right now there are A yellow and B blue crystals in Grisha's disposal. Find out how many additional crystals he should acquire in order to produce the required number of balls.

Input

The first line features two integers A and B (0 ≤ A, B ≤ 109), denoting the number of yellow and blue crystals respectively at Grisha's disposal.

The next line contains three integers xy and z (0 ≤ x, y, z ≤ 109) — the respective amounts of yellow, green and blue balls to be obtained.

Output

Print a single integer — the minimum number of crystals that Grisha should acquire in addition.

Example
Input
4 3
2 1 1
Output
2
Input
3 9
1 1 3
Output
1
Input
12345678 87654321
43043751 1000000000 53798715
Output
2147483648
Note

In the first sample case, Grisha needs five yellow and four blue crystals to create two yellow balls, one green ball, and one blue ball. To do that, Grisha needs to obtain two additional crystals: one yellow and one blue.

-----------------------------------------------------------------------------------------------

题意:作者要做球,其中一个黄球需要2个黄色材料,绿色的球需要1个黄色材料和一个蓝色材料,蓝色的球需要3个蓝色的材料,现有A个黄色的材料B个蓝色的材料,需要准备x个黄色的球,y个绿色的球,z个蓝色的球,输出,要做这些球还需要黄色和蓝色的材料多少个。

分析:水题,注意一种情况:给定的材料够的情况,注意数的范围。

#include <iostream>
#include <stdio.h>
#include <stack>
#include <stdlib.h>
#include <malloc.h>
#include <cmath>
#include <algorithm>
using namespace std;
int main()
{
    long long  A,B;
    long long  x,y,z;
    cin>>A>>B;
    cin>>x>>y>>z;
    long long yello=0,green=0,bule=0;
    yello=x*2+y;
    bule=z*3+y;
    long long sum1=yello -A;
    long long sum2=bule -B;
    if(sum1<0)
        sum1=0;
    if(sum2<0)
        sum2=0;
    cout<<sum1+sum2<<endl;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值