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;}