夭寿啦!一群牛打算发家致富卖酸奶啦!
这是一道简单的贪心问题,将每两周的两种情况(每周生产和前一周生产下一周的酸奶)的价格进行比对选择价格小的即可。
#include <cstdio>
#include <utility>
#include <algorithm>
using namespace std;
typedef pair<int, int> week;
const int MAXN = 10000;
week cy[MAXN+2];
int main()
{
int n,s;
scanf("%d%d", &n, &s);
int i;
for (i = 0; i < n; i++) {
scanf("%d%d", &cy[i].first, &cy[i].second);
}
long long cost = 0;
i = 0;
while (i < n) {
long long a = cy[i].first * cy[i].second + cy[i+1].first * cy[i+1].second;
long long b = cy[i].first * (cy[i].second + cy[i+1].second) + cy[i+1].second * s;
if (a <= b) {
cost += cy[i].first * cy[i].second;
i++;
}
else {
cost += b;
i += 2;
}
}
printf("%lld\n", cost);
return 0;
}