传说中的鸡心
2024-02-23 11:01:48
发布于:北京
全WA
样例过了
题目描述
小码君开办了一家机器工厂,在
�
n 个星期内,原材料成本和劳动力价格不断起伏,第
�
i 周生产一台机器需要花费
�
�
c
i
元。若没把机器卖出去,每保养一台机器,每周需要花费
�
s 元,这个费用不会发生变化。
机器工厂接到订单,在第
�
i 周需要交付
�
�
y
i
台机器给委托人,第
�
i 周刚生产的机器,或者之前的存货,都可以进行交付。
请你计算出这
�
n 周时间内完成订单的最小代价。
输入格式
第一行输入两个整数
�
n 和
�
s,接下来
�
n 行,一行代表一周,每行两个数
�
�
c
i
和
�
�
y
i
代表这一周的生产机械花费和这一周的订单个数。
输出格式
输出一个整数,表示最少的代价。
输入输出样例
输入#1
复制
4 5
88 200
89 400
97 300
91 500
输出#1
复制
126900
说明/提示
1
≤
�
≤
1
0
4
1≤n≤10
4
,
1
≤
�
�
≤
5000
1≤c
i
≤5000,
1
≤
�
≤
100
1≤s≤100,
0
≤
�
�
≤
1
0
4
0≤y
i
≤10
4
。
样例1解释
第一周全部生产出来
88
∗
200
88∗200,第二周也是全部生产出来
89
∗
400
89∗400,第三周的订单由第二周生产出来
94
(
89
+
5
)
∗
300
94(89+5)∗300,第四周的订单全部生产出来
91
∗
500
91∗500,一共
126900
126900 元。
#include<bits/stdc++.h>
using namespace std;
long long n,s,c,y;
long long ans,sum;
int main(){
scanf("%d %d",&n,&s);
scanf("%d %d",&c,&y);
ans = c,sum += ans*y;
for(int i=1;i<n;i++){
scanf("%d %d",&c,&y);
ans=min(ans+s,c);
sum += ans * y;
}
printf("%d",sum);
return 0;
}
这里空空如也
有帮助,赞一个