最優裝載問題
阿新 • • 發佈:2018-07-06
部分背包 div tmp ++ 簡單 lse sin pan ret
這個問題比部分背包問題還簡單,先拿輕的再拿重的可以保證最後物品裝的最多。代碼如下:
1 #include<iostream> 2 #include<algorithm> 3 using namespace std; 4 const int maxn=1005; 5 int n; 6 int w[maxn]; 7 int C; 8 int ans=0; 9 int main() 10 { 11 cin>>n; 12 for(int i=1;i<=n;i++) 13 cin>>w[i]; 14 sort(w+1,w+n+1); 15 cin>>C; 16 int tmp=0; 17 for(int i=1;i<=n;i++) 18 { 19 tmp+=w[i]; 20 if(tmp<=C) 21 ans++; 22 else 23 break; 24 } 25 cout<<ans<<endl; 26 return 0; 27 }
最優裝載問題