Luogu P1376 机器工厂
Posted yBaka
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Luogu P1376 机器工厂相关的知识,希望对你有一定的参考价值。
P1376 机器工厂
题目描述
小T开办了一家机器工厂,在N(N<=10000)个星期内,原材料成本和劳动力价格不断起伏,第i周生产一台机器需要花费Ci(1<=Ci<=5000)元。若没把机器卖出去,每保养一台机器,每周需要花费S(1<=S<=100)元,这个费用不会发生变化。
机器工厂接到订单,在第i周需要交付Yi(0<=Yi<=10^4)台机器给委托人,第i周刚生产的机器,或者之前的存货,都可以进行交付。
请你计算出这n周时间内完成订单的最小代价。
输入输出格式
输入格式:
第一行输入两个整数N和S,接下来N行输入Ci和Yi
输出格式:
输出一个整数,表示最少的代价
输入输出样例
输入样例#1:
4 5 88 200 89 400 97 300 91 500
输出样例#1:
126900
说明
时限1S,空间256MB
贪心。如果本周的生产成本比上周+维修费大,那么就上周生产,屯到这周使用。
如果本周的生产成本低,则本周生产。
那么就看代码实现吧。
1 #include <cstdio> 2 3 int n, c[10005], s, y[10005]; 4 int main() 5 { 6 scanf("%d%d", &n, &s); 7 for(int i=0; i<n; i++) 8 scanf("%d%d", &c[i], &y[i]); 9 long long ans=0; 10 int minn = 100000000; //生产成本最小 第0周生产成本无穷大 11 for(int i=0; i<n; i++) 12 { 13 minn += s; //保养+当周所需钱的最小值 14 if(minn > c[i]) //如果最小值比本周生产成本高 则本周的为最小值 15 minn = c[i]; 16 ans += minn*y[i]; 17 } 18 printf("%lld", ans); 19 return 0; 20 }
以上是关于Luogu P1376 机器工厂的主要内容,如果未能解决你的问题,请参考以下文章
LUOGU P3161 [CQOI2012]模拟工厂 (贪心)
Azure 机器人微软Azure Bot 编辑器系列 : 机器人/用户提问回答模式,机器人从API获取响应并组织答案 (The Bot Framework Composer tutorial(代码片段