通过规律转换成代码 100 ==> 33瓶+1盖=34盖 ==> 11瓶+1盖=12盖 ==> 4瓶=4盖 ==>1瓶+1盖 ==> 2盖 瓶=n/3 (向下取整) 盖=n%3 #include <iostream> using namespace std; int main() { int n; cin>>n; int res=n; while(n>=3) { res+=n/3;// res += [当前可兑换的瓶数] n=n/3+n%3;//n = [当前可兑换的瓶数] + [兑换后剩余的盖数] } cout<<res; return 0; }
做法二
#include<iostream> #include<algorithm> #include<cstring> using namespace std; int main() { int n; cin>>n; int res=n; while(n>=3) { n-=2; //换一瓶饮料,少俩盖 res++; } cout<<res; }
0.0分
0 人评分
聪明的美食家 (C语言代码)浏览:1252 |
众数问题 (C语言代码)浏览:3514 |
C二级辅导-统计字符 (C语言代码)浏览:743 |
C语言训练-求具有abcd=(ab+cd)2性质的四位数 (C语言代码)浏览:1372 |
简单的a+b (C语言代码)浏览:627 |
数组输出 (C语言代码)浏览:767 |
C语言训练-求s=a+aa+aaa+aaaa+aa...a的值 (C++代码)(手动优化一下计算)浏览:1284 |
妹子杀手的故事 (C语言代码)浏览:690 |
C语言程序设计教程(第三版)课后习题10.2 (C语言代码)浏览:509 |
文科生的悲哀 (C语言代码)浏览:1401 |