[第1章 1.4t6] 对称二叉树
71 字
1 分钟
[第1章 1.4t6] 对称二叉树
#include<bits/stdc++.h>#define endl '\n'using namespace std;typedef long long ll;typedef pair<ll,ll> pll;vector<ll> v;vector<ll> tree;unordered_map<ll,pll> mp;ll count(ll x){ if(x==-1)return 0; ll l=mp[x].first; ll r=mp[x].second; tree[x]=count(l)+count(r)+1; return tree[x];}bool mirror(ll x,ll y){ if(x==-1&&y==-1)return true; if(x==-1||y==-1)return false; if(v[x]!=v[y])return false; return mirror(mp[x].first,mp[y].second)&&mirror(mp[x].second,mp[y].first);}int main(){ ios::sync_with_stdio(false);cin.tie(0); ll n; cin>>n; tree.resize(n+1); v.resize(n+1); for(ll i=1;i<=n;i++)cin>>v[i]; for(ll i=1;i<=n;i++){ cin>>mp[i].first>>mp[i].second; } ll ans=0; count(1); for(ll i=1;i<=n;i++){ if(mirror(i,i))ans=max(ans,tree[i]); } cout<<ans<<endl; return 0;}支持与分享
如果这篇文章对你有帮助,欢迎分享给更多人或打赏支持!
相关文章智能推荐
1
06泛型
深入技术2026-11-12
2
夺回平板所有权:讯飞 iClass C6 逆向记
闲谈杂录通过逆向技术找到讯飞定制ROM的破绽,夺回数据主权
3
16怪兽:手搓迷你容器
深入技术用 namespace 与 cgroups 亲手拼出一个最小可用的容器,回头对照 Docker 的每个概念。
4
15怪兽:底层原理
深入技术看懂 namespace、cgroups、veth、iptables 与 overlayfs 各自在哪一层做了什么。
5
14进阶:资源限制与性能
深入技术给容器划出 CPU 与内存的上限,并弄清一个容器为什么还能把宿主机拖垮。
随机文章随机推荐





