Cod sursa(job #1958711)

Utilizator SolcanMihaiSolcan Mihai Andrei SolcanMihai Data 8 aprilie 2017 17:39:20
Problema Algoritmul lui Dijkstra Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.5 kb
#include <cstdio>

using namespace std;

int n, m;
int dp[10005];

void solve()
{
	scanf("%d %d", &n, &m);

	int greutate, profit;

	for(int i = 0; i < n; i++)
	{
		scanf("%d %d", &greutate, &profit);
		
		for(int j = m; j >= 0; j--)
		{
			if(j - greutate >= 0)
			{
				if(dp[j - greutate] + profit > dp[j])
				{
					dp[j] = dp[j - greutate] + profit; 
				}
			}
		}
	}

	printf("%d", dp[m]);
}

int main()
{
	freopen("rucsac.in", "r", stdin);
	freopen("rucsac.out", "w", stdout);

	solve();

	return 0;
}