hdoj1864最大报销额
来源:互联网 发布:好看的网络电视剧 编辑:程序博客网 时间:2024/04/29 19:06
此题略坑500MS过因为要金钱数组要成*100,可以用贪心0ms过但没有尝试。。。
#include<stdio.h>#include<math.h>#include<string.h>#include<stdlib.h>#include<stack>#include<map>#include<time.h>double money[3000011],sum,sm[50],va,suma,sumb,sumc;char a;int main(){ int n,i,j,k,am,i1,kind; double m; while(scanf("%lf %d",&m,&n)!=EOF) { i1=0; if(n!=0) { for(i=0;i<n;i++) { sum=suma=sumb=sumc=0; scanf("%d ",&kind); for(k=0;k<kind;k++) { if(k!=kind-1) scanf("%c:%lf ",&a,&va); else scanf("%c:%lf",&a,&va); if(a=='A')suma+=va; else if(a=='B')sumb+=va; else if(a=='C')sumc+=va; else goto s; } sum=suma+sumb+sumc; if(suma>600||sumb>600||sumc>600||sum>1000)goto s; sm[i1]=sum; i1++; s:; } for(i=0;i<=(int)(m*100);i++) money[i]=0; for(i=0;i<i1;i++) for(j=(int)(m*100);j-(int)(sm[i]*100)>=0;j--) { money[j]=money[j]>money[j-(int)(sm[i]*100)]+sm[i]?money[j]:money[j-(int)(sm[i]*100)]+sm[i]; } printf("%.2lf\n",money[(int)(m*100)]); } } return 0;}
0 0
- HDOJ1864 最大报销额
- hdoj1864最大报销额
- hdu1864 最大报销额
- hdu1864最大报销额
- 最大报销额
- hdu1864 最大报销额
- hdu1864 最大报销额
- hdu1844 最大报销额
- HDU1864----最大报销额
- OJ_1025 最大报销额
- 最大报销额
- hdu1864 最大报销额
- hdu 最大报销额
- DP 最大报销额
- 最大报销额
- 1025.最大报销额
- hdu1864 最大报销额
- hdu1864 最大报销额
- 发V相关合同约定
- 更新、插入tableview某一行数据或section数据
- 突破private马其诺防线
- ERP系统实施过程问题概览
- 7种将字符串反转的java方法
- hdoj1864最大报销额
- 递归之汉诺塔
- 为什么这样使用DefaultTableModel会出错???
- ArcGIS教程:类别概率
- MyBatis学习系列九:MyBatis Generator 工具使用
- HDU 1386--Play on Words【并查集判连通 + 欧拉路】
- 电商ERP vs.传统ERP,有何不一样?
- [CortexM--CMSIS]详细的说明
- HTML5日期输入类型(date)