Cod sursa(job #214816)

Utilizator anna_bozianuBozianu Ana anna_bozianu Data 16 octombrie 2008 09:49:36
Problema Cc Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.79 kb
#include<stdio.h>
int main()
{
	readd();
	ungar();
	return 0;
}
void readd()
{
	freopen("cc.in","r",stdin);
	freopen("cc.out","w",stdout);
	scanf("%d",&n);
	for(i=1;i<=n;i++)
		for(j=1;j<=n;j++)
			scanf("%d",&a[i][j]);
}
void ungar()
{
	scad_min_lin();
	while(find_zero());
	finalizare();
}
void scad_min_lin()
{
	for(i=1;i<=n;i++)
	{
		ml[i]=a[i][1];
		for(j=2;j<=n;j++)
			ml[i]=(a[i][j]<ml[i])?a[i][j]:ml[i];
	}
	for(i=1;i<=n;i++)
	{
		for(j=1;j<=n;j++)
		if(!cc[j]&&a[i][j]==ml[i])
		{ cc[j]=i;break;}
	}
}
void ungar()
{
	minim=infinit;
	for(j=1;j<=n;j++)
	{ if(!cc[j])
	   for(i=1;i<=n;i++)
		   minim=(a[i][j]<minim)?a[i][j]:minim;
	  if(!minim)break;
	}
	if(minim==infinit)return 0;
	if(minim)
		for(j=1;j<=n;j++)
			if(!cc[j])
				mc[j]+=minim;