POJ 2393 Yogurt factory (贪心)

Posted Calm微笑

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了POJ 2393 Yogurt factory (贪心)相关的知识,希望对你有一定的参考价值。

Yogurt factory
Time Limit: 1000MS Memory Limit: 65536K
Total Submissions: 9304 Accepted: 4730

Description

The cows have purchased a yogurt factory that makes world-famous Yucky Yogurt. Over the next N (1 <= N <= 10,000) weeks, the price of milk and labor will fluctuate weekly such that it will cost the company C_i (1 <= C_i <= 5,000) cents to produce one unit of yogurt in week i. Yucky's factory, being well-designed, can produce arbitrarily many units of yogurt each week. 

Yucky Yogurt owns a warehouse that can store unused yogurt at a constant fee of S (1 <= S <= 100) cents per unit of yogurt per week. Fortuitously, yogurt does not spoil. Yucky Yogurt's warehouse is enormous, so it can hold arbitrarily many units of yogurt. 

Yucky wants to find a way to make weekly deliveries of Y_i (0 <= Y_i <= 10,000) units of yogurt to its clientele (Y_i is the delivery quantity in week i). Help Yucky minimize its costs over the entire N-week period. Yogurt produced in week i, as well as any yogurt already in storage, can be used to meet Yucky's demand for that week.

Input

* Line 1: Two space-separated integers, N and S. 

* Lines 2..N+1: Line i+1 contains two space-separated integers: C_i and Y_i.

Output

* Line 1: Line 1 contains a single integer: the minimum total cost to satisfy the yogurt schedule. Note that the total might be too large for a 32-bit integer.

Sample Input

4 5
88 200
89 400
97 300
91 500

Sample Output

126900

Hint

OUTPUT DETAILS: 
In week 1, produce 200 units of yogurt and deliver all of it. In week 2, produce 700 units: deliver 400 units while storing 300 units. In week 3, deliver the 300 units that were stored. In week 4, produce and deliver 500 units. 

Source

USACO 2005 March Gold 题意:任务规定,一个酸奶制造厂,在n个星期内,分别要向外提供y[i]unit的酸奶。已知这个制造厂第i周制造每unit酸奶的费用为c[i],储存室储存每1unit酸奶1星期的费用为s。问要完成这个任务的最小费用是多少。 思路:用暴力超时了,自己的理解有点问题,如果第三年的让第一年来生产,那么费用一定会多于第一年,所以只需要比较是本年生产本年的还是去年生产本年的就行。
#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
int main()

	__int64 n,m,i,j,k,l,ans,min=999999;
	while(scanf("%I64d%I64d",&n,&m)!=EOF)
	
		ans=0;
		for(i=0;i<n;i++)
		
			scanf("%I64d%I64d",&k,&l);
			if(k>min+m)
			k=min+m;
			min=k;
			ans+=k*l;
		
		printf("%I64d\\n",ans);
	
	return 0;
  


以上是关于POJ 2393 Yogurt factory (贪心)的主要内容,如果未能解决你的问题,请参考以下文章

POJ 2393 Yogurt factory (贪心)

POJ 2393 Yogurt factory (贪心)

贪心POJ2393:Yogurt factory

Yogurt factory(POJ 2393 贪心 or DP)

poj_2393 Yogurt factory 贪心

贪心问题 POJ 2393 Yogurt factory