B3932 [语言月赛 202402] 酒 题解
Source & Knowledge
2024 年 2 月语言月赛,由洛谷网校入门计划/基础计划提供。
题目大意
一小桶酒含有酒
编号为
编号为
编号为
求喝酒最多的李白编号和对应的喝酒升数。
题目分析
通过简单的数学计算,可以发现:
因此我们只需要找出其中的最大值,并找到对应编号即可。
一种方法是,先使用 max() 函数计算出三者中的最大值,之后依次检验
在 printf 中,如果想要输出保留两位小数的浮点数,可以使用 %.2f 的格式化字符串。这告诉 printf 函数要输出一个浮点数,并且保留两位小数。
核心代码如下:
double mx = max(a * x + b * y, max(c * y, d * y + e));
if (a * x + b * y == mx) {
printf("1 %.2lf\n", mx);
} else if (c * y == mx) {
printf("2 %.2lf\n", mx);
} else {
printf("3 %.2lf\n", mx);
}