hdu 2614 DFS

来源:互联网 发布:c udp网络编程 编辑:程序博客网 时间:2024/05/22 10:41

直接搜啦。。。。void DFS( int prev, int now, int number ) 表示刚刚解决的是prev现在要解决now并且已经解决了number个问题。。。。。。一般般拉~~~

AC代码如下:

#include <iostream>#include <cstdio>using namespace std;int map[15][15];int mark[15];int ans, N;void DFS( int prev, int now, int number ){for( int i = 1; i < N; i++ ){if( mark[i] == 0 ){if( map[now][i] >= map[prev][now] ){mark[i] = 1;DFS( now, i, number + 1 );mark[i] = 0;}}}if( number > ans ){ans = number;}}int main(){while( scanf( "%d", &N ) != EOF ){for( int i = 0; i < N; i++ ){for( int j = 0; j < N; j++ ){cin >> map[i][j];}}memset( mark, 0, sizeof( mark ) );ans = 0;for( int i = 1; i < N; i++ ){mark[i] = 1;DFS( 0, i, 2 );mark[i] = 0;}cout << ans << endl;}return 0;}


 

原创粉丝点击