九度OJ 1009 二叉搜索树

来源:互联网 发布:python tkinter案例 编辑:程序博客网 时间:2024/05/18 21:44

二叉树问题,左边比根小,右边比根大。

AC代码

#include<cstdio>#include<cstring>#include<algorithm>using namespace std;char a[11],b[11];char ta[1025],tb[1025];int update(char *t,int o,int ans){    if(t[o]==-1)t[o]=ans;    else    {        if(ans>t[o])update(t,o*2+1,ans);        else update(t,o*2,ans);    }}int main(){    int n;    while(scanf("%d",&n),n)    {        scanf("%s",a+1);        memset(ta,-1,sizeof(ta));        for(int i=1;a[i]!='\0';i++)        {            update(ta,1,a[i]);        }        ta[1025]='\0';        while(n--)        {            scanf("%s",b+1);            memset(tb,-1,sizeof(tb));            for(int i=1;b[i]!='\0';i++)            update(tb,1,b[i]);            tb[1025]='\0';            if(!strcmp(ta,tb))puts("YES");            else puts("NO");        }    }    return 0;}


0 0