題目描述:判斷兩序列是否為同一二叉搜尋樹序列
輸入:開始乙個數n,(1<=n<=20) 表示有n個需要判斷,n= 0 的時候輸入結束。
接下去一行是乙個序列,序列長度小於10,包含(0~9)的數字,沒有重複數字,根據這個序列可以構造出一顆二叉搜尋樹。
接下去的n行有n個序列,每個序列格式跟第乙個序列一樣,請判斷這兩個序列是否能組成同一顆二叉搜尋樹。
輸出:如果序列相同則輸出yes,否則輸出no
樣例輸入:
2567432
543267
576342
0
樣例輸出:
yesno
ac**:
#include#includestruct nodetree[189];
int loc;
node* creat()
char str1[18],str2[18];
int size1,size2;
char *str;
int *size;
node* creattree(int x,node *p)
if(xvalue)
if(x>p->value)
return p;
}void preorder(node *p)
if(p->rchild!=null)
}void inorder(node *p)
str[(*size)++]=p->value+'0';
if(p->rchild!=null)
}int main()
str=str1;
size1=0;
size=&size1;
preorder(root);
inorder(root);
str1[size1]=0;
while(n-- >0)
str=str2;
size2=0;
size=&size2;
preorder(root);
inorder(root);
str2[size2]=0;
if(strcmp(str1,str2)==0)
else}}
}
九度OnlineJudge 搬水果(1107)
題目描述 在乙個果園裡,小明已經將所有的水果打了下來,並按水果的不同種類分成了若干堆,小明決定把所有的水果合成一堆。每一次合併,小明可以把兩堆水果合併到一起,消耗的體力等於兩堆水果的重量之和。當然經過 n 1 次合併之後,就變成一堆了。小明在合併水果時總共消耗的體力等於每次合併所耗體力之和。假定每個...
九度online judge 開門人和關門人
我的 已ac include include include usingnamespace std class employee void print bool operator const employee a else if this minute1 minute1 return false e...
九度OnlineJudge之1014 排名
題目描述 今天的上機考試雖然有實時的ranklist,但上面的排名只是根據完成的題數排序,沒有考慮每題的分值,所以並不是最後的排名。給定錄取分數線,請你寫程式找出最後通過分數線的考生,並將他們的成績按降序列印。輸入 測試輸入包含若干場考試的資訊。每場考試資訊的第1行給出考生人數n 0 n 1000 ...