销量预测
收入方程解得较小定价 50
正文
// 原题:https://oj.yecheng.tv/p/1344
// 题意:定价 110 时有 10 人报名,每降 1 元多 1 人(涨价则少)。要收到 3500 元,求较小定价(四舍五入整数)。
// 思路:报名数 = 10 + (110 - p),收入 = p*(120 - p) = 3500,解二次方程得 p=50 或 70,取较小 50。
// 复杂度:O(1)。
// 易错点:报价与人数关系要写对,二次方程两个解取小的。
#include <iostream>
#include <cmath>
using namespace std;
int main() {
// p^2 - 120p + 3500 = 0,取较小根
int p = (120 - (int)sqrt(120.0 * 120.0 - 4.0 * 3500.0)) / 2;
cout << p << endl;
return 0;
}