解题思路:
注意事项:
参考代码:
#include<cstdio> #include<iostream> #include<cstring> using namespace std; int rmb[1010];//消耗1 int rp[1010];//消耗2 int t[1010]; int f[101][101];//钱为i,人品为j时泡最多mm的数量 int mint[101][101];//钱为i,人品为j时泡最多mm的最少时间 int main() { int n,i,m=0,r=0;//m->money,r->rp int v1,v2; scanf("%d",&n); for(i=1;i<=n;++i) scanf("%d%d%d",&rmb[i],&rp[i],&t[i]); scanf("%d%d",&m,&r); for(i=1;i<=n;++i) { for(v1=m;v1>=0;--v1) { for(v2=r;v2>=0;--v2) { if(v1>=rmb[i]&&v2>=rp[i]) { if(f[v1][v2]<f[v1-rmb[i]][v2-rp[i]]+1)//先找个数多的 { f[v1][v2]=f[v1-rmb[i]][v2-rp[i]]+1; mint[v1][v2]=mint[v1-rmb[i]][v2-rp[i]]+t[i]; } else if(f[v1][v2]==f[v1-rmb[i]][v2-rp[i]]+1)//个数相同取时间最小 { mint[v1][v2]=min(mint[v1][v2],mint[v1-rmb[i]][v2-rp[i]]+t[i]); } } } } } printf("%d",mint[m][r]); return 0; }
0.0分
1 人评分
C语言考试练习题_排列 (C语言代码)浏览:1315 |
C语言程序设计教程(第三版)课后习题6.4 (C语言代码)浏览:738 |
求圆的面积 (C语言代码)浏览:1267 |
蛇行矩阵 (C语言代码)浏览:742 |
A+B for Input-Output Practice (III) (C语言代码)浏览:569 |
C语言程序设计教程(第三版)课后习题7.5 (C语言代码)浏览:519 |
C语言程序设计教程(第三版)课后习题9.6 (C语言代码)浏览:575 |
DNA (C语言描述,蓝桥杯)浏览:1553 |
母牛的故事 (C语言代码)浏览:561 |
分解质因数 (C++代码)浏览:1471 |