专栏文章

题解:P1909 [NOIP2016 普及组] 买铅笔

P1909题解参与者 4已保存评论 4

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
4 条
当前快照
1 份
快照标识符
@miqmcwf0
此快照首次捕获于
2025/12/04 07:09
3 个月前
此快照最后确认于
2025/12/04 07:09
3 个月前
查看原文

思路

由于只能买同一种包装的铅笔,所以可以直接输入 33 种包装的铅笔数和价格,然后将所需的钱数和之前的钱数的最小值作比较,求出最小值。这里还需要特判一下,因为一个包装内的铅笔数可能大于需要的铅笔数量。

代码

CPP
#include<iostream>
#include<algorithm>
#include<cmath>
using namespace std;
int n,mi=INT_MAX,a,b;
int main(){
	cin>>n;
	for(int i=0;i<3;i++){
		cin>>a>>b;
		if(n%a==0||a%n==0) mi=min(mi,n/a*b);
		else mi=min(mi,n/a*b+b);
	}
	cout<<mi;
}

评论

4 条评论,欢迎与作者交流。

正在加载评论...