2614 Beat

2614 Beat
 1 #include < stdio.h >
 2 #include < string .h >
 3 int  nd[ 16 ][ 16 ];
 4 int  hash[ 16 ];
 5 int  max;
 6 int  n;
 7 void  dfs( int  x, int  y, int  k)
 8 {
 9    int i;
10    if(max<y)
11    {
12        max=y;
13    }

14    for(i=0;i<n;i++)
15    {
16        if(hash[i]&&k<=nd[x][i])
17        {
18            hash[i]=0;
19            dfs(i,y+1,nd[x][i]);
20            hash[i]=1;
21        }

22    }

23    return;
24}

25 int  main()
26 {
27    int i,j,k;
28    while(scanf("%d",&n)!=EOF)
29    {
30        for(i=0;i<n;i++)
31        {
32            for(j=0;j<n;j++)
33            {
34                scanf("%d",&nd[i][j]);
35            }

36        }

37        memset(hash,1,sizeof(hash));
38        hash[0]=0;
39        max=-1;
40        dfs(0,1,0);
41        printf("%d\n",max);
42    }

43}

44         
45     

你可能感兴趣的:(2614 Beat)