原题链接:P9240 [蓝桥杯 2023 省 B] 冶炼金属 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
#include<stdio.h>
//最大值考虑:A个O只够生成B个X,A不能再多了
//Max=A/B
//最大值只能向下取,不能向上取,三条记录合取最小值
//最小值考虑,V越小,B越多,
//临界情况,B比原来多1,说明X比原来少1
//Min=A/(B+1)+1
//Min只能向上取,不能向下取,合取最大值
int main(){
int N,i,V,A,B,Max,Min,c,d;
scanf ("%d",&N);
for (i=0;i<N;i++){
scanf ("%d %d",&A,&B);
c=A/B;
d=A/(B+1);
if (i==0){
Max=c;
Min=d;
}
if (c<Max)
Max=c;
if (d>Min)
Min=d;
}
printf("%d %d",Min+1,Max);
return 0;
}
这篇文章描述了一个编程问题,涉及计算在给定资源限制下金属冶炼中最大和最小产量的算法。代码展示了如何根据A(原料数量)和B(单位原料可生产的X数量)计算最大值和最小值,这两个值在特定规则下决定输出结果。
1180

被折叠的 条评论
为什么被折叠?



