Cod sursa(job #2407181)
| Utilizator | Data | 16 aprilie 2019 16:51:43 | |
|---|---|---|---|
| Problema | Energii | Scor | 0 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 0.43 kb |
#include <bits/stdc++.h>
std::ifstream in("energii.in");
std::ofstream out("energii.out");
#define mx 100001
int G,W,E[mx],C[mx],Dp[mx];
int main(){
in>>G>>W;
for(int i=1; i<=G; ++i) in>>E[i]>>C[i];
for(int i=1; i<mx; ++i) Dp[i] = (1<<25);
for(int i=1; i<=G; ++i)
for(int j=W-E[i]; j>=0; --j)
Dp[j+E[i]] = std::min(Dp[j+E[i]], Dp[j] + C[i]);
out<<Dp[W];
return 0;
}
