2973.cpp

来自「北京大学ACM比赛题 The game of Scrabble is play」· C++ 代码 · 共 51 行

CPP
51
字号
#include"stdio.h"
#include"string.h"
#include"stdlib.h"

int main()
{
    char s[1010][10];
    char test[10];
    int n;
    int i,j,k,l;
    int num,num1,num2;
    scanf("%d",&n);
    getchar();
    while(n!=0) {
        //bool test1[10]={0};
        num=0; 
        num1=0;       
        for(i=1;i<=n;i++)
            gets(s[i]);
        gets(test);
        l=strlen(test);
        for(i=0;i<l;i++) {
           if(test[i]=='_') num1++;
        }
        //printf("%d\n",num1);
        for(i=n;i>0;i--){
           bool test1[10]={0};
           num2=0;
           if(strlen(s[i])<=l&&strlen(s[i])>num1) {
               for(j=0;j<strlen(s[i]);j++) {
                  for(k=0;k<l;k++) {
                     if(s[i][j]==test[k]&&test1[k]==0) {num2++; test1[k]=1; break;}
                  }  
               }
               if(num2>=(strlen(s[i])-num1)) {
                   num++;
                  // printf("%s\n",s[i]);
               }
           }                 
           else if(strlen(s[i])<=num1) {
                num++;
                //printf("%s\n",s[i]);
           }   
        }
        printf("%d\n",num);
        scanf("%d",&n);
        getchar();
   }
   return 0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?