All pastes #41281 Raw Edit

Anonymous

public text v1 · immutable
#41281 ·published 2006-02-12 15:56 UTC
rendered paste body
#include<stdio.h>
#define N 200
int max;
int n;
int res[N];
char a[N][N];
char vis[N];
int pos[N];
int tour(int p, int lev)
{
	int i;
	if(lev>max)
	{
		max=lev;
		for(i=0;i<lev;i++)
		res[i]=pos[i];
	}
	for(i=0;i<n;i++)
	{
		if(a[p][i]==1 && vis[i]!=1)
		{
			pos[lev]=i;
			vis[i]=1;
			tour(i,lev+1);
			vis[i]=0;
		}
	}
	return 0;
}
int main()
{
	long int ntests;
	int i, j;
	int p;
	scanf("%ld",&ntests);
	while(ntests--)
	{
		scanf("%d",&n);
		for(i=0;i<n;i++)
		{
			for(j=0;j<n;j++)
			{
				scanf("%d",&p);
				a[i][j]=p;	
			}
			vis[i]=0;
		}
		max=1;
		for(i=0;i<n;i++)
		{
			vis[i]=1;
			pos[0]=i;
			tour(i,1);
			vis[i]=0;			
		}
		printf("%d\n",max);
		printf("%d",res[0]);
		for(i=1;i<max;i++)
		printf(" %d",res[i]);
		printf("\n");
	}
	return 0;
}