对称二叉树(信息学奥赛一本通-T1368)
生活随笔
收集整理的這篇文章主要介紹了
对称二叉树(信息学奥赛一本通-T1368)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
【題目描述】
如果二叉樹的左右子樹的結構是對稱的,即兩棵子樹皆為空,或者皆不空,則稱該二叉樹是對稱的。編程判斷給定的二叉樹是否對稱.
例:如下圖中的二叉樹T1是對稱的,T2是不對稱的。
二叉樹用順序結構給出,若讀到#則為空,二叉樹T1=ABCDE,T2=ABCD#E,如果二叉樹是對稱的,輸出“Yes”,反之輸出“No”。
【輸入】
二叉樹用順序結構給出,若讀到#則為空。
【輸出】
如果二叉樹是對稱的,輸出“Yes”,反之輸出“No”。
【輸入樣例】
ABCDE
【輸出樣例】
Yes
【源程序】
#include<iostream> #include<cstdio> #include<cstring> #include<cmath> #include<algorithm> #include<string> #include<cstdlib> #include<queue> #include<vector> #define INF 0x3f3f3f3f #define PI acos(-1.0) #define N 1001 #define MOD 123 #define E 1e-6 using namespace std; char s[N]; int main() {cin>>s;int len=strlen(s);s[len]='#';int flag=true;for(int i=1;i<len;i+=2){if( (s[i]=='#'&&s[i+1]!='#') || (s[i+1]=='#'&&s[i]!='#') ){flag=false;break;}}if(flag)cout<<"Yes"<<endl;elsecout<<"No"<<endl;return 0; }?
總結
以上是生活随笔為你收集整理的对称二叉树(信息学奥赛一本通-T1368)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 组合数学 —— 组合数取模 —— 逆元与
- 下一篇: 完全背包问题(信息学奥数一本通-T126