[2016年NOIP普及组] 买铅笔
思路:P老师决定只买同一种包装的铅笔同时也要最划算,那么可以循环进行3次计算。每次的价格都与最小值比较,如果小于最小值,就代替当前最小值。
分析:计算时,要算出买几包铅笔。商店不允许将铅笔的包装拆开——也就是当铅笔数量不能被每包铅笔的数量整除时,因此P老师可能需要购买超过n支铅笔才够给小朋友们发礼物((n/x)+1)。
代码如下:
#include<iostream>
#include<cstdio>
using namespace std;
int main()
{
int n,min=99999999;
cin>>n;
for(int i=1;i<=3;i++)//3种铅笔
{
int x,y,z;
cin>>x>>y;//每种铅笔和价格
if(n%x==0)
z=y*(n/x);
else//如果铅笔数量不能被每包铅笔的数量整除
z=y*((n/x)+1);//要整除+1
if(z<min)//找最划算的
min=z;
}
cout<<min;
return 0;
}
标签:include,NOIP,int,最小值,铅笔,整除,2016 From: https://www.cnblogs.com/xdzxyingrui/p/16582626.html