hdu 2164 Beat

/* ***********************************************
Author        :xryz
Email         :523689985@qq.com
Created Time  :4-9 22:30:18
File Name     :Beat.cpp
************************************************ */

#include <stdio.h>
#include <string.h>
#include <iostream>
#include <algorithm>
#include <vector>
#include <queue>
#include <set>
#include <map>
#include <string>
#include <math.h>
#include <stdlib.h>
#include <time.h>
using namespace std;

int n,mp[20][20],vis[20],ans;

void dfs(int now,int data,int cnt)
{
    if(now==n) return;
    ans=max(ans,cnt);
    for(int i=0;i<n;i++)
    {
        if(vis[i]) continue;
        if(mp[now][i]>=data)
        {
            vis[i]=1;
            dfs(i,mp[now][i],cnt+1);
            vis[i]=0;
        }
    }
}
int main()
{
    while(~scanf("%d",&n))
    {
        for(int i=0;i<n;i++)
            for(int j=0;j<n;j++)
                scanf("%d",&mp[i][j]);
        ans=0;
        memset(vis,0,sizeof(vis));
        vis[0]=1;
        dfs(0,0,1);
        printf("%d
",ans);
    }
    return 0;
}

版权声明:本文为博主原创文章,未经博主允许不得转载。http://xiang578.top/

原文地址:https://www.cnblogs.com/xryz/p/4848046.html