本站遷移

因為我最近租用了網路空間以及網域,
故本站已遷移至新網站~
這邊的資訊已經正在進行搬移的工作~
希望各位可以到新網站去逛XD

New Website:
http://knightzone.org/

搜尋此網誌

2011年3月7日 星期一

[UVa]291:The House Of Santa Claus

利用backtracking把所有解都跑一遍即可。

[C](0.008)
#include<stdio.h>
int house[6][6] = {0};
int path[10] = {0}, pathsize = 0;
void backtracking( int point )
{
path[pathsize++] = point;
int i;
if( pathsize == 9 )
{
for( i = 0 ; i < pathsize ; i++ )
printf( "%d", path[i] );
printf( "\n" );
pathsize--;
return;
}
for( i = 1 ; i <= 5 ; i++ )
{
if( house[point][i] )
{
house[point][i] = house[i][point] = 0;
backtracking( i );
house[point][i] = house[i][point] = 1;
}
}
pathsize--;
}
int main()
{
house[1][2] = house[2][1] = 1;
house[1][3] = house[3][1] = 1;
house[1][5] = house[5][1] = 1;
house[2][3] = house[3][2] = 1;
house[2][5] = house[5][2] = 1;
house[3][4] = house[4][3] = 1;
house[3][5] = house[5][3] = 1;
house[4][5] = house[5][4] = 1;
backtracking( 1 );
return 0;
}
view raw UVa291.c hosted with ❤ by GitHub

0 意見:

張貼留言