Cod sursa(job #834260)

Utilizator elfusFlorin Chirica elfus Data 14 decembrie 2012 01:31:27
Problema Economie Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.53 kb
#include <stdio.h>

int sol[1024];
bool used[50100], is[50100];

int main()
{
	int N, x, vmax = -1, i, j;
	
	freopen("economie.in", "r", stdin);
	freopen("economie.out", "w", stdout);
	
	scanf("%d", &N);
	for (i = 1; i <= N; i ++)
	{
		scanf("%d", &x);
		if (x > vmax)
			vmax = x;
		is[x] = 1;
	}
	
	for (i = 1; i <= vmax; i ++)
		if (is[i] && !used[i])
		{
			sol[++ sol[0]] = i;
			for (j = i; j <= vmax; j += i)
				used[j] = 1;
		}
		
	for (i = 0; i <= sol[0]; i ++)
		printf("%d\n", sol[i]);
	return 0;
}