最终能喝多少瓶
题目描述:
某菜馆为了吸引顾客,推出a个瓶盖换一个酒瓶、b个酒瓶换一瓶啤酒的活动,喝完酒后酒盖和酒瓶也归购买者所有。现在某位顾客一次性用钱购买了n瓶啤酒,如果该顾客足够聪明,凭着公平交易的原则,它最终最多能喝到多少瓶瓶酒。
输入:
每行三个整数a、b、n,整数之间有一个空格,2<=a,b<1000,2<=n<=1000000000;重复输入直至a=b=n=0。
输出:
每行一个整数,最终最多能喝到的啤酒瓶数。
最后一行也有回车。
我写的在平台上提交是超时的,不知道是算法超时,还是因为用vector输出超时,或者两者都有,请佬指点指点怎么减少运行时间,优化算法
1、使用位运算:在某些情况下,使用位运算可以提高性能。例如,如果a和b的值相对较小,你可以考虑使用位运算来替代除法和求余运算,从而提高性能。
2、尽量避免不必要的计算:在编写代码时,尽量避免不必要的计算,例如无用的变量赋值、不必要的条件判断等,从而提高性能。
3、缩小循环范围:根据题目的要求,a、b、n的取值范围都有限制,你可以根据这些限制来缩小循环范围,从而减少运行时间。