本站遷移

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

New Website:
http://knightzone.org/

搜尋此網誌

2011年4月2日 星期六

[UVa]340:Master-Mind Hints

這題照著題目要求做即可。

P.S. 每用掉一個數字就把它記錄下來,以避免重複判斷的狀況發生。

[C](0.020)
#include<stdio.h>
int main()
{
int N, game = 1;
while( scanf( "%d", &N ) != EOF && N != 0 )
{
printf( "Game %d:\n", game++ );
int s[1005], g[1005];
int i, j;
for( i = 0 ; i < N ; i++ )
scanf( "%d", &s[i] );
int exit = 1;
while(1)
{
int position_g[1005] = {0}, position_s[1005] = {0};
int A = 0, B = 0;
for( i = 0 ; i < N ; i++ )
{
scanf( "%d", &g[i] );
if( g[i] == s[i] )
{
A++;
position_s[i] = 1;
position_g[i] = 1;
}
if( g[i] )
exit = 0;
}
if( exit )
break;
exit = 1;
for( i = 0 ; i < N ; i++ )
{
if( position_g[i] )
continue;
for( j = 0 ; j < N ; j++ )
{
if( position_s[j] )
continue;
if( i == j )
continue;
if( (g[i] == s[j]) )
{
B++;
position_s[j] = 1;
position_g[i] = 1;
break;
}
}
}
printf( " (%d,%d)\n", A, B );
}
}
return 0;
}
view raw UVa340.c hosted with ❤ by GitHub

0 意見:

張貼留言