008. 饮料换购
原题链接:P8627 [蓝桥杯 2015 省 A] 饮料换购
解题思路:
模拟题 纯数学办法 直接计算出能换多少瓶饮料,然后再加上原先的 \(n\) 瓶,但是要注意换的饮料的瓶盖也能继续换饮料,所以说每次换完饮料剩余的瓶盖数为 \(n/3+n\%3\) (换的饮料的瓶盖加上上次换饮料剩余的瓶盖),计算总的饮料数就是第一次的 \(n\) 瓶 加上每次换的饮料,直到最后 \(n/3 = 0\) 时(也就是不能继续换了),最后直接输出结果就OK
AC代码:
#include <bits/stdc++.h>
#define ll long long
#define endl '\n'
using namespace std;
int main(){
int n, ans = 0, temp = 0;
cin >> n;
ans = n;
while(n/3){
ans += n/3;
n = (n/3 + n%3);
}
cout << ans;
return 0;
}
标签:int,换购,饮料,瓶盖,ans,008
From: https://www.cnblogs.com/zyihan-crz/p/18686871