目录
题目描述
输入样例
3
75 3
53 2
59 2
输出样例
20 25
题解
思路:
推公式
通过maxv存储转换率的最大值, minv存储转换率的最小值
1、最大值maxv是比较好想的,直接算每组 a/b的最小值即可
2、最小值minv比较难想,有点脑筋急转弯的感觉,
根据转换率v的定义:消耗 v个普通金属 O 恰好可以冶炼出一个特殊金属 X
那么可以算一下每组a/(b + 1)的最大值,最后 + 1即可
#include <bits/stdc++.h>
using namespace std;
int n;
int main() {
cin >> n;
int maxv = 1e9, minv = -1e9;
while (n -- ) {
int a, b;
cin >> a >> b;
maxv = min(maxv, a / b);
minv = max(minv, a / (b + 1));
}
cout << minv + 1 << ' ' << maxv;
return 0;
}