zoukankan      html  css  js  c++  java
  • Hamburgers CodeForces

    #include<map>
    #include<queue>
    #include<time.h>
    #include<limits.h>
    #include<cmath>
    #include<ostream>
    #include<iterator>
    #include<set>
    #include<stack>
    #include<cstdio>
    #include<cstring>
    #include<iostream>
    #include<algorithm>
    using namespace std;
    #define rep_1(i,m,n) for(int i=m;i<=n;i++)
    #define mem(st) memset(st,0,sizeof st)
    #define int long long
    typedef long long ll;
    const int inf = 0x3f3f3f3f;
    char re[227];
    ll need[4],num[4],price[4];
    ll r;
    bool check(ll x)
    {
    	ll B=x*need[1], S=x*need[2], C=x*need[3];
    	ll tmp1=0, tmp2=0, tmp3=0;
    	if(num[1] < B)
    		tmp1= (B - num[1]) * price[1];
    	if(num[2] < S)
    		tmp2= (S - num[2]) * price[2];
    	if(num[3] < C)
    		tmp3= (C - num[3]) * price[3];
    	if(tmp1+tmp2+tmp3 <= r)
    		return true;
    	else
    		return false;
    }
    signed main()
    {
    	cin>>re;
    	for(int i=0; i<strlen(re); i++)
    	{
    		if(re[i]=='B')
    			need[1]++;
    		else if(re[i]=='S')
    			need[2]++;
    		else if(re[i]=='C')
    			need[3]++;
    	}
    	for(int i=1; i<=3; i++)
    		cin>>num[i];
    	for(int i=1; i<=3; i++)
    		cin>>price[i];
    	cin>>r;
    	ll l=0,r1=2e12;
    	while(l<r1)
    	{
    		ll mid=l+r1+1>>1;
    		if(check(mid))
    			l=mid;
    		else
    			r1=mid-1;
    	}
    	if(l==0)
    		cout<<0<<endl;
    	else
    		cout<<l<<endl;
    	return 0;
    }
    
    
  • 相关阅读:
    倍增_ST表与LCA
    树状数组
    CF1365B 题解
    左偏树
    ES5_04_Array扩展
    ES5_03_Object扩展
    ES5_05_Function扩展
    前台样式与实际开发应用
    利用Mircosoft URLRewriter.dll实现页面伪静态(伪静态系列一)
    递归算法常见习题代码(控制台程序)
  • 原文地址:https://www.cnblogs.com/QingyuYYYYY/p/12839233.html
Copyright © 2011-2022 走看看