
/**//**************************************
Problem: POJ 2255 Tree Recovery
Time: 0MS
Memory: 204K 
Accepted Time: 2009-05-17 12:04:43
Tips: http://acm.pku.edu.cn/JudgeOnline/showmessage?message_id=107777
**************************************/
#include <stdio.h>
#include <string.h>
char pre[30],ino[30];
void fun(int ps,int pe,int is,int ie)


{
    if(ps==pe)

    
{
        printf("%c",pre[ps]);
        return;
    }
    if(ps>pe||is>ie)return;
    char root=pre[ps];
    int i;
    for(i=is;i<=ie;i++)
    if(root==ino[i])break;
    int len=i-is;
    fun(ps+1,ps+len,is,i-1);
    fun(ps+len+1,pe,i+1,ie);
    printf("%c",root);
}
int main()


{
    while(scanf("%s%s",pre,ino)!=EOF)

    
{
        int len=strlen(pre);
        fun(0,len-1,0,len-1);
        printf("\n");
    }
    return 0;
}

 
 
             
            posted @ 
2009-05-18 17:25 
主函数 
阅读(
523) 
评论() 
 
收藏 
举报