酷代码 AI
菜单
服务商

题目描述 商店里有一些气球,其中蓝气球和红气球共n 只,蓝气球和黄气球共m 只,黄气球和红气球共k 只。 问红、蓝、黄气球各有多少只? 输入 读入三个整数分别是n[1,100] m[1,100] k[1,100] _ _ 输出 按照样例格式,输出红, 蓝, 黄的气球数量 样例输入 复制 21 28 29 样例输出 复制 red:11 blue:10 yellow:18

设红气球数量为 \( r \),蓝气球数量为 \( b \),黄气球数量为 \( y \)。 根据题意: \[ r + b = n \] \[ b + y = m \] \[ y + r = k \] 将三式相加: \[ (r + b) + (b + y) + (y + r) = n + m + k \] \[ 2r + 2b + 2y = n + m + k \] \[ r + b + y = \frac{n + m + k}{2} \] 记 \( S = \frac{n + m + k}{2} \)。 则: \[ r = S - (b + y) = S - m \] \[ b = S - (y + r) = S - k \] \[ y = S - (r + b) = S - n \] 代入样例 \( n = 21, m = 28, k = 29 \): \[ S = \frac{21 + 28 + 29}{2} = \frac{78}{2} = 39 \] \[ r = 39 - 28 = 11 \] \[ b = 39 - 29 = 10 \] \[ y = 39 - 21 = 18 \] 输出格式为 `red:11 blue:10 yellow:18`。 代码实现(C++): ```cpp #include <iostream> using namespace std; int main() { int n, m, k; cin >> n >> m >> k; int S = (n + m + k) / 2; int red = S - m; int blue = S - k; int yellow = S - n; cout << "red:" << red << " blue:" << blue << " yellow:" << yellow << endl; return 0; } ``` [2025-12-31 12:23:20 | AI问答 | 424点数解答]

相关提问
发财导航,免费问AI
实用工具查看更多