poj2393

it2022-05-23  74

说是贪心,有点动态规划的思想了,因为long long int错了两次。。。伤心

#include <iostream> #include <cstring> #include <cstdio> using namespace std; const int maxn=10000+10; int a[maxn],b[maxn],c[maxn]; int n,s; long long int sum; int main() { while(~scanf("%d%d",&n,&s)) { sum=0; for(int i=1;i<=n;i++) scanf("%d%d",&a[i],&b[i]); c[1]=a[1]; for(int i=2;i<=n;i++) c[i]=min(a[i],c[i-1]+s); for(int i=1;i<=n;i++) sum+=c[i]*b[i]; printf("%lld\n",sum); } return 0; }

 

转载于:https://www.cnblogs.com/Wangwanxiang/p/6651657.html

相关资源:数据结构—成绩单生成器

最新回复(0)