1271:【例9.15】潜水员
1 #include<iostream> 2 #include<cstring> 3 #include<algorithm> 4 using namespace std; 5 6 const int N=1005; 7 int a[N],b[N],c[N],f[105][105]; 8 int main(){ 9 int m,n,t; 10 memset(f,127,sizeof(f)); 11 f[0][0]=0; 12 cin>>m>>n>>t; 13 for(int i=1;i<=t;i++)cin>>a[i]>>b[i]>>c[i]; 14 for(int i=1;i<=t;i++) 15 for(int j=m;j>=0;j--) 16 for(int k=n;k>=0;k--){ 17 int t1=min(m,j+a[i]),t2=min(n,k+b[i]); 18 f[t1][t2]=min(f[t1][t2],f[j][k]+c[i]);//f[i][j]表示得到i氧气j氮气所需的最少重量 19 } 20 cout<<f[m][n]; 21 return 0; 22 }
新知识
- memset会将指定的初始化值化为8位2进制铺满字节

浙公网安备 33010602011771号