百练+贪心,比较上下两周价格

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u013554860/article/details/78393506
点击打开链接
//
//  main.cpp
//  test
//
//  Created by 吴有堃 on 2017/9/11.
//  Copyright © 2017年 吴有堃. All rights reserved.
//
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <string>
#include <cstring>
#include <string.h>
#include <math.h>
#include <algorithm>
#include <queue>
#define LL long long
using namespace std;
const int maxn=1e4+5;
LL sum=0;
int N=0,S=0,C_i[maxn],Y_i[maxn];
int main()
{
    int i=0;
    scanf("%d %d",&N,&S);
    for(i=0;i<N;i++){
        scanf("%d %d",&C_i[i],&Y_i[i]);
    }
    sum=0;
    for(i=0;i<N;i++){
        sum+=C_i[i]*Y_i[i];
        C_i[i+1]=min(C_i[i+1],C_i[i]+S);//最核心的,只需更新下一周就好,有下一周最优的就可以更新之后下下周
    }
    printf("%lld\n",sum);
    return 0;
}

阅读更多
换一批

没有更多推荐了,返回首页