2 条题解
-
1许致远___ (XZYxuzhiyuan) LV 7 @ 2022-4-15 20:29:22
#include<cstdio> #include<cstring> #include<algorithm> using namespace std; const int N=5005; int f[N],t[N],c[N]; int main(){ int n,s; scanf("%d%d",&n,&s); for(int i=1;i<=n;i++){ scanf("%d%d",&t[i],&c[i]); t[i]+=t[i-1],c[i]+=c[i-1]; } memset(f,0x3f,sizeof f); f[0]=0; for(int i=1;i<=n;i++) for(int j=0;j<i;j++) f[i]=min(f[i],f[j]+t[i]*(c[i]-c[j])+s*(c[n]-c[j])); printf("%d",f[n]); return 0; }
老师的错了~~
-
02021-8-8 1:34:47@
C++ :
#include <iostream> #include <cstring> #include <algorithm> using namespace std; const int N = 5005; int f[N],t[N],c[N]; int main(){ int n,s; scanf("%d%d",&n,&s); for(int i = 1;i <= n;i++){ scanf("%d%d",&t[i],&c[i]); t[i] += t[i-1],c[i] += c[i-1]; } memset(f,0x3f,sizeof f); f[0] = 0; for(int i = 1;i <= n;i++){ for(int j = 0;j < i;j++){ f[i] = min(f[i],f[j] + t[i] * (c[i] - c[j]) + s * (c[n] - c[j])); } } printf("%d\n",f[n]); return 0; }
- 1
信息
- ID
- 211
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 4
- 标签
- 递交数
- 23
- 已通过
- 17
- 上传者