Cod sursa(job #2762613)

Utilizator helloworld0107Iordachi Bianca helloworld0107 Data 8 iulie 2021 19:39:05
Problema Problema rucsacului Scor 100
Compilator c-64 Status done
Runda Arhiva educationala Marime 0.52 kb
#include<string.h>
#include<stdio.h>

 


int N, G;
int w[10000], p[10000];
int a[10000];

int main() {
	
	freopen("rucsac.in", "r", stdin);
	freopen("rucsac.out", "w", stdout);
	
	scanf("%d %d", &N, &G);
	
	for (int i = 1; i <= N; i++) 
	{
		scanf("%d %d", &w[i], &p[i]);
	}
	a[0] = 0; int ans = 0;
	
	for( int i = 1; i <= N; i++)
		for( int j = G - w[i]; j >= 0; j--) 
		{
			if( a[j+w[i]] < a[j] + p[i] )
			{
				a[j+w[i]] = a[j] + p[i];
				
				 if (a[j+w[i]] > ans)
					ans = a[j+w[i]];
			}
		}
	printf("%d", ans);
	return 0; 
}