hdu 3791

来源:互联网 发布:合肥启凡网络怎么样 编辑:程序博客网 时间:2024/05/19 13:28
//今天刚学完二叉查找树 找个题目练练 这个题目有点水 直接用数组存吧//二叉查找树#include<stdio.h>#include<stdlib.h>#include<string.h>#define max 3000char Tree1[1100],Tree2[max],Tree3[max];void buildTree(char *temTree,int pos,char data){    if(temTree[pos]=='.')    {        temTree[pos]=data;        return ;    }    if(temTree[pos]<data)    {        buildTree(temTree,pos*2+1,data);    }    else if(temTree[pos]>data)    {        buildTree(temTree,pos*2,data);    }    else ;}int main(){    int len;    while(scanf("%d",&len),len)    {       // memset(Tree1,'.',sizeof(Tree1));        memset(Tree2,'.',sizeof(Tree2));        scanf("%s",Tree1);        for(int i=0; i<strlen(Tree1); i++)        {            buildTree(Tree2,1,Tree1[i]);        }        for(int i=0; i<len; i++)        {          //  memset(Tree1,'.',sizeof(Tree1));            memset(Tree3,'.',sizeof(Tree3));            scanf("%s",Tree1);            for(int j=0; j<strlen(Tree1); j++)            {                buildTree(Tree3,1,Tree1[j]);            }            if(strcmp(Tree2,Tree3)==0)                printf("YES\n");            else                printf("NO\n");        }    }    return 0;}

原创粉丝点击