3-4 Master-Mind Hints (P50)/ UVA

来源:互联网 发布:淘宝店铺装修轮播尺寸 编辑:程序博客网 时间:2024/04/30 02:47
水题的小细节。。。
#include <iostream>#include <cstdio>#include <cstdlib>#include <cstring>#include <algorithm>using namespace std;int main(){    int n,count = 1;    int d[1005],b[1005],Bd[1005],Bb[1005];    while(scanf("%d",&n) == 1)    {        if(n == 0)            break;        int i,j;        for(i = 0;i < n;i++)            scanf("%d",&d[i]);        printf("Game %d:\n",count);        while(1)        {            int A = 0,B = 0;            memset(Bd,0,sizeof(Bd));            memset(Bb,0,sizeof(Bb));            for(i = 0;i < n;i++)            {                scanf("%d",&b[i]);                if(b[i] == d[i])                    A++;            }            if(b[0] == 0)                break;            for(i = 1;i <= 9;i++)                for(j = 0;j < n;j++)                {                    if(d[j] == i)//designer中,数字i出现了Bd[i]次                        Bd[i]++;                    if(b[j] == i)                        Bb[i]++;                }            //min(Bb[i],Bd[i]) 是某一个数字,在括号的第二位上,能出现的最大次数。            for(i = 1;i <= 9;i++)            {                B += min(Bb[i],Bd[i]);            }            printf("    (%d,%d)\n",A,B-A);        }        count++;    }    return 0;}

原创粉丝点击