A. Guest From the Past(数学推式子)

\(n元,买塑料杯子a元,买玻璃杯子b元,但玻璃杯子用完后可以卖c元\)
\(求最多买的杯子.\)

\(---------------------------分割-------------------------------\)

\(因为塑料杯子固定,我们先确定买多少玻璃杯子.\)

\(很明显当n>=b(至少购买一次)且(b-c)<a(至少比塑料杯划算才行),我们才买玻璃杯\)

\(设这种情况下买了X个玻璃杯,剩下的钱不够买玻璃杯了\)

\[也就是n-X(b-c)<b \]

\[变形得X>\frac{n-b}{b-c} \]

\(因为算的时候向下取整,所以我们实际买的玻璃杯是\frac{n-b}{b-c}+1\)

\(然后剩下来的钱都买塑料杯\)

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
ll n,a,b,c;
int main()
{
	ll ans=0;
	cin>>n>>a>>b>>c;
	if(b-c<a&&n>=b)
	{
		ll num=(n-b)/(b-c);
		num++;//因为向下取整所以加1 
		ans+=num;
		n-=num*(b-c);
	}
	ans+=n/a;
	cout<<ans;
}
posted @ 2020-05-07 09:10  倾叶子佮  阅读(117)  评论(0)    收藏  举报