时间限制: 1000 ms 内存限制: 65536 KB
提交数: 56488 通过数: 27584
【题目描述】
某幼儿园里,有5个小朋友编号为1、2、3、4、5,他们按自己的编号顺序围坐在一张圆桌旁。他们身上都有若干个糖果(键盘输入),现在他们做一个分糖果游戏。从1号小朋友开始,将自己的糖果均分三份(如果有多余的糖果,则立即吃掉),自己留一份,其余两份分给他的相邻的两个小朋友。接着2号、3号、4号、5号小朋友同样这么做。问一轮后,每个小朋友手上分别有多少糖果。
【输入】
5个小朋友的糖果数。
【输出】
游戏后5个小朋友的糖果数。(按5位宽度输出)
【输入样例】
8 9 10 11 12
【输出样例】
11 7 9 11 6
【题目考点】
1. 复合赋值表达式
表格中两列对应写法是等价的
写法1 写法2
a = a + b a += b
a = a - b a -= b
a = a * b a *= b
a = a / b a /= b
a = a % b a %= b
【解题思路】
糖果均分后,如果有多余的,就吃掉。例如8个糖果三等分,每份2个,剩下2个吃掉。每份数量为8/2,进行整除运算。
【题解代码】
解法1:用cin, cout
#include<bits/stdc++.h>
using namespace std;
int main()
{
int a, b, c, d, e;
cin >> a >> b >> c >> d >> e;
a /= 3; b += a; e += a;
b /= 3; a += b; c += b;
c /= 3; b += c; d += c;
d /= 3; c += d; e += d;
e /= 3; d += e; a += e;
cout << setw(5) << a << setw(5) << b << setw(5) << c << setw(5) << d << setw(5) << e;
return 0;
}