题解 P5018 【对称二叉树】

2019-02-15 00:00:00 题解

为什么我的hash正解,代码简洁,复杂度O(n)题解,管理员大佬不给我过呢?首先O(n)题解没几篇吧?hash没几篇吧?请管理员大佬仔细看看我的题解和哪一篇思路一样了?(我的玄学翻转树hash啊)

我的博客超级好看

我的第一道树哈希

背景:

此题可以说是我NOIP2018打的最漂亮的一道题 虽然时间复杂度O(n)可是我在i5的机子上跑出了3000ms+???? 考完之后看整个江西赛区只有我一个人打出来了(好开心,据说chen_zhe大佬当场都没有打出来) 之后来洛谷逛了一圈题解,没有看到我满意的。。。。不是编译出来一大堆警告就是时间复杂度太高,而且我的思路貌似全国第一无二? 所以很抱歉时隔几个月才发表这一片题解QAQ,大家互相学习一下

我在考试时大便时间无师自通想出来的玄学树哈希

其实跑一边dfs就好了

原理:若一个树对称,那么将他的左子树翻转一遍(镜面成像差不多)将等于他的右子树,判断相等的方法就是哈希啦

求哈希也很简单,只要把他的左子树和右子树的哈希值哈希一下就是以当前节点为根的子树的哈希值,再一层一层递归上去就Ojbk了 至于翻转(这么弱智的问题需要我说吗?),swap一下左子树和右子树的哈希值不就是了

最后献上我考试时打出来的代码(left数组撞上关键字加了一个下划线)

#include<bits/stdc++.h>
using namespace std;
int ans,dis[1000005],_left[1000005],_right[1000005],n;
int hash(int ha,int hb,int hc) {//玄学树哈希
    ha*=13331;
    ha%=INT_MAX;
    ha+=hb;
    ha%=INT_MAX;
    ha*=13331;
    ha%=INT_MAX;
    ha+=hc;
    ha%=INT_MAX;
    ha*=13331;
    ha%=INT_MAX;
    return ha;
}
pair<long long,int> dfs(int t,bool CanIGo) {
//first存哈希值,second存树的子节点的个数
    pair<int,int> QwQ;
    if(t==-1) {
        QwQ.first=1;
        QwQ.second=0;
        return QwQ;
    }
    pair<long long,int> l=dfs(_left[t],1);
    pair<long long,int> r=dfs(_right[t],0);
    if(CanIGo) swap(l,r);//CanIGo存当前节点是不是父节点的左子树,如果是就swap哈希值镜面成像(这一步最重要!!!)
    QwQ.second=l.second+r.second+1;
    if(l.first==r.first&&QwQ.second>ans) ans=QwQ.second;//更新值
    QwQ.first=hash(l.first,r.first,dis[t]);
    if(QwQ.first<=0) QwQ.first+=INT_MAX;
    //防止溢出,考试的时候脑子不好使背不出来unsigned这个词哈哈哈
    return QwQ;
}
int main() {
    cin>>n;
    for(int i=1;i<=n;i++)
        scanf("%d",dis+i);
    for(int i=1;i<=n;i++)
        scanf("%d%d",_left+i,_right+i);
    dfs(1,1);
    cout<<ans<<endl;
    return 0;
}

RobertleN

2026-03-17 08:01:22

https://lineage888.com/home.php?mod=space&uid=16716&do=profile&from=space

Garrywerry

2026-03-15 20:03:03

<a href=https://t.me/s/LeonbetsZerkalo>казино леон официальный</a> https://t.me/s/LeonbetsZerkalo

Garrywerry

2026-03-14 06:27:16

<a href=https://t.me/s/casinox1000>casino x рабочее зеркало</a> https://t.me/s/casinox1000

Josephspele

2026-03-10 04:48:51

<a href=https://medium.com/@ratypw/ทดลองเล่นสล็อต-pg-ฟรี-b486aaf3ff0d>ทดลองเล่นสล็อต pg ฟรี</a> สล็อต PG แพลตฟอร์มเกมสล็อตยอดนิยม $

Josephbon

2026-03-10 03:44:05

สล็อต PG เกมสล็อตออนไลน์ที่คนค้นหาเยอะ ใช้งานง่าย ฝากถอนรวดเร็ว คำค้นหา pg slot กำลัง&#

Charleyher

2026-03-09 21:15:43

<a href=https://medium.com/@ratypw/ทดลองเล่นสล็อต-pg-ไม่-เด้ง-b88b92172ebc>ทดลองเล่นสล็อต pg ไม่ เด้ง</a>

Josephspele

2026-03-09 21:13:48

<a href=https://medium.com/@ratypw/ทดลองเล่นสล็อต-pg-ฟรี-b486aaf3ff0d>ทดลองเล่นสล็อต pg ฟรี</a> pg slot เกมสล็อตออนไลน์ที่คนค้นหาเยอะ

BradleyEquam

2026-03-09 21:12:21

<a href=https://medium.com/@ratypw/ทดลองเล่นสล็อต-pg-เว็บ-ตรง-1e04ecaca5d5>ทดลองเล่นสล็อต pg เว็บ ตรง"</a> สล็อต PG เกมสล็อตออนไลน์ท

CharlesPails

2026-03-08 21:00:21

pg slot แพลตฟอร์มเกมสล็อตยอดนิยม เล่นง่าย ฝากถอนเร็ว คำค้นหา สล็อต PG ถูกค้นหามากขึ้น&#

пръстени

2026-03-08 20:55:22

<a href=https://www.victoria-gold.com/>колие</a>

TravisEnlig

2026-03-08 20:44:23

<a href=https://medium.com/p/a4ea8e21fdde>สล็อต</a> แพลตฟอร์ม TKBNEKO มอบมิติใหม่ของเกมออนไลน์ ธุรกรรมรวดเร็ว ด้วยระบบสแกน

BradleyEquam

2026-03-08 20:36:49

PG Slot เกมสล็อตออนไลน์ที่คนค้นหาเยอะ เข้าเล่นไว ฝากถอนออโต้ คำค้นหา pg slot มาแรงในช่วงŨ

Rodneyrob

2026-03-08 03:19:25

<a href=https://medium.com/p/e598fa477f69>ทดลองเล่นสล็อต pg</a> แพลตฟอร์ม TKBNEKO มอบมิติใหม่ของเกมออนไลน์ ฝาก-ถอนไว ด้วยระบบ$

JasonUphon

2026-03-07 11:21:13

<a href=https://medium.com/@ratypw/pg-a6844d313100>pg</a> แพลตฟอร์ม TKBNEKO มอบมิติใหม่ของการเดิมพันออนไลน์ ระบบการเงินรวดเร็ว ด้วยร

BradleyEquam

2026-03-06 12:47:18

pg slot สล็อตยอดฮิต เล่นง่าย ฝากถอนเร็ว คำค้นหา สล็อต PG มาแรงในช่วงนี้ ในกลุ่มผู้เล่น&

Matthewkep

2026-03-06 05:35:48

<a href=https://medium.com/p/4f194f3f3e96>ทดลองเล่นสล็อต pg ซื้อฟรีสปิน</a>

tuan88

2026-03-06 05:21:12

<a href=https://como-limpiar.org/>tuan88</a>

Josephspele

2026-03-06 04:42:37

<a href=https://medium.com/@ratypw/ทดลองเล่นสล็อต-pg-ฟรี-b486aaf3ff0d>ทดลองเล่นสล็อต pg ฟรี</a> PG Slot เกมสล็อตออนไลน์ที่คนค้นหาเยอะ

Josephbon

2026-03-06 04:41:09

pg slot เกมสล็อตออนไลน์ที่คนค้นหาเยอะ เข้าเล่นไว ฝากถอนออโต้ คำค้นหา PG Slot มาแรงในช่วงŨ

Rodneyrob

2026-03-06 01:14:02

<a href=https://medium.com/p/e598fa477f69>ทดลองเล่นสล็อต pg</a> แพลตฟอร์ม TKBNEKO เปิดประสบการณ์ใหม่แห่งการเดิมพันออนไลน์ ธุ

TravisEnlig

2026-03-05 10:11:19

<a href=https://medium.com/p/a4ea8e21fdde>สล็อต</a> แพลตฟอร์ม TKBNEKO มอบมิติใหม่ของเกมออนไลน์ ธุรกรรมรวดเร็ว ด้วยระบบสแกน

Felixpaw

2026-03-05 10:09:31

<a href=https://medium.com/@ratypw/สล็อต-78c19ade9fcf>สล็อต</a> แพลตฟอร์ม TKBNEKO เปิดประสบการณ์ใหม่แห่งการเดิมพันออนไลน์ ธุรกร&#

Rodneyrob

2026-03-04 12:12:16

<a href=https://medium.com/p/e598fa477f69>ทดลองเล่นสล็อต pg</a> TKBNEKO มอบมิติใหม่ของเกมออนไลน์ ธุรกรรมรวดเร็ว ด้วยระบบสแกน

BradleyEquam

2026-03-04 12:11:44

<a href=https://medium.com/@ratypw/ทดลองเล่นสล็อต-pg-เว็บ-ตรง-1e04ecaca5d5>ทดลองเล่นสล็อต pg เว็บ ตรง"</a> สล็อต PG เกมสล็อตออนไลน์ท

Charleyher

2026-03-04 12:06:51

<a href=https://medium.com/@ratypw/ทดลองเล่นสล็อต-pg-ไม่-เด้ง-b88b92172ebc>ทดลองเล่นสล็อต pg ไม่ เด้ง</a>

Charleyher

2026-03-03 03:10:40

<a href=https://medium.com/@ratypw/ทดลองเล่นสล็อต-pg-ไม่-เด้ง-b88b92172ebc>ทดลองเล่นสล็อต pg ไม่ เด้ง</a>

Josephbon

2026-03-02 20:36:09

<a href=https://medium.com/p/70cdb1132344>ทดลองเล่นสล็อต pg</a> pg slot เกมสล็อตออนไลน์ที่คนค้นหาเยอะ ใช้งานง่าย ฝากถอนรวดเร&#

Rodneyrob

2026-03-02 20:35:48

<a href=https://medium.com/p/e598fa477f69>ทดลองเล่นสล็อต pg</a> แพลตฟอร์ม TKBNEKO เปิดประสบการณ์ใหม่แห่งการเดิมพันออนไลน์ ฝา

Josephspele

2026-03-02 19:21:01

<a href=https://medium.com/@ratypw/ทดลองเล่นสล็อต-pg-ฟรี-b486aaf3ff0d>ทดลองเล่นสล็อต pg ฟรี</a> สล็อต PG สล็อตยอดฮิต เล่นง่าย ฝากถอ&#3

CharlesPails

2026-03-02 12:06:18

<a href=https://medium.com/p/70cdb1132344>ทดลองเล่นสล็อต pg</a> PG Slot แพลตฟอร์มเกมสล็อตยอดนิยม ใช้งานง่าย ฝากถอนรวดเร็ว คำ&#3

TravisEnlig

2026-03-02 11:50:33

<a href=https://medium.com/p/a4ea8e21fdde>สล็อต</a> แพลตฟอร์ม TKBNEKO เปิดประสบการณ์ใหม่แห่งการเดิมพันออนไลน์ ฝาก-ถอนไว ด้ว

Felixpaw

2026-03-02 11:30:48

<a href=https://medium.com/@ratypw/สล็อต-78c19ade9fcf>สล็อต</a> แพลตฟอร์ม TKBNEKO เปิดประสบการณ์ใหม่แห่งการเดิมพันออนไลน์ ฝาก-ถอ&

JasonUphon

2026-03-02 11:12:50

<a href=https://medium.com/@ratypw/pg-a6844d313100>pg</a> เว็บไซต์ TKBNEKO มอบมิติใหม่ของการเดิมพันออนไลน์ ธุรกรรมฉับไว ด้วยระบบสแกน

BradleyEquam

2026-03-02 10:59:23

สล็อต PG แพลตฟอร์มเกมสล็อตยอดนิยม ใช้งานง่าย ฝากถอนรวดเร็ว คำค้นหา pg slot กำลังได้รั&#

clones

2026-03-02 10:49:03

<a href=https://clones.co.com/>clones shipped to massachusetts</a>

Timothypak

2026-03-02 10:20:17

<a href=https://medium.com/p/e598fa477f69>ทดลองเล่นสล็อต pg</a> TKBNEKO เปิดประสบการณ์ใหม่แห่งการเดิมพันออนไลน์ ธุรกรรมรวดเ

Charleyher

2026-03-01 09:59:34

<a href=https://medium.com/@ratypw/ทดลองเล่นสล็อต-pg-ไม่-เด้ง-b88b92172ebc>ทดลองเล่นสล็อต pg ไม่ เด้ง</a>

MartinExase

2026-02-28 01:23:22

<a href=https://medium.com/p/4f194f3f3e96>ทดลองเล่นสล็อต pg ซื้อฟรีสปิน</a>

clones

2026-02-27 21:17:37

<a href=https://cannabisclones.us.com/>Lemon Cherry Gelato</a>

clones

2026-02-27 21:17:29

<a href=https://clones.co.com/>clones shipped to ohio</a>

FloydNut

2026-02-27 08:34:19

<a href=https://medium.com/p/4f194f3f3e96>ทดลองเล่นสล็อต pg ซื้อฟรีสปิน</a>

Timothypak

2026-02-27 08:23:23

<a href=https://medium.com/p/e598fa477f69>ทดลองเล่นสล็อต pg</a> แพลตฟอร์ม TKBNEKO เปิดประสบการณ์ใหม่แห่งการเดิมพันออนไลน์ ธุ

CharlesPails

2026-02-27 03:22:23

<a href=https://medium.com/p/70cdb1132344>ทดลองเล่นสล็อต pg</a> pg slot แพลตฟอร์มเกมสล็อตยอดนิยม ใช้งานง่าย ฝากถอนรวดเร็ว คำ&#3

CharlesPails

2026-02-27 02:36:06

สล็อต PG เกมสล็อตออนไลน์ที่คนค้นหาเยอะ เล่นง่าย ฝากถอนเร็ว คำค้นหา PG Slot ถูกค้นหามา&#

RussellHug

2026-02-27 02:24:54

สล็อต PG เกมสล็อตออนไลน์ที่คนค้นหาเยอะ เข้าเล่นไว ฝากถอนออโต้ คำค้นหา สล็อต PG ถูก&

CharlesPails

2026-02-27 01:32:15

<a href=https://medium.com/me/stats/post/15daef7c2ec0>สล็อต</a>

pg slot

2026-02-25 11:10:32

<a href=https://medium.com/@ratypw/pg-slot-9fba35adf87f>pg slot</a> PG Slot แพลตฟอร์มเกมสล็อตยอดนิยม เข้าเล่นไว ฝากถอนออโต้ คำค้นหา สล็อต PG กำล&

Timothypak

2026-02-25 06:43:39

<a href=https://medium.com/@ratypw/สล็อต-78c19ade9fcf>สล็อต</a> แพลตฟอร์ม TKBNEKO เปิดประสบการณ์ใหม่แห่งการเดิมพันออนไลน์ ฝาก-ถอ&

ทดลองเล่นสล็อต pg

2026-02-24 01:53:52

<a href=https://tkbneko.uk.com/>สล็อต</a> แพลตฟอร์ม TKBNEKO มอบ พื้นที่ออนไลน์ที่ทันสมัย ซึ่ง ผู้ที่สนใจ สามารถ เข้า$

pg slot

2026-02-23 07:34:38

<a href=https://medium.com/@ratypw/pg-slot-9fba35adf87f?>pg slot</a> pg slot เกมสล็อตออนไลน์ที่คนค้นหาเยอะ เข้าเล่นไว ฝากถอนออโต้ คำค้นหา pg slot กำ&#3

สล็อต

2026-02-22 05:14:59

<a href=https://tkbneko.uk.com/>สล็อต</a> TKBNEKO เป็นแพลตฟอร์มเกมออนไลน์ ที่ ออกแบบโครงสร้างโดยยึดพฤติกรรมผู้ใช้&

ทดลองเล่นสล็อต pg

2026-02-20 05:21:18

<a href=https://tkbneko.uk.com/>สล็อต</a> แพลตฟอร์ม TKBNEKO เป็นแพลตฟอร์มเกมออนไลน์ ที่ วางระบบโดยยึดการใช้งานจริง

Waltermet

2026-02-17 22:48:55

https://www.distoninstitute.com/cinco-desplazamientos-saludables-cual-llegan-a-convertirse-en-focos-de-luces-tienen-ejecutar-a-habitual-mgc-mutua

Richardemila

2026-02-16 03:49:51

<a href=https://liveresincarts.org/>buy cap junky clones</a>

Waltermet

2026-02-16 02:23:27

<a href=http://anandinstitutebhopal.com/trucos-con-el-fin-de-que-practique-tarea-fisica-salubre>recomendaciones para practicar ejercicio de forma segura</a>

pg slot

2026-02-16 01:03:49

<a href=https://tkbneko.uk.com/>ทดลองเล่นสล็อต pg</a> TKBNEKO เป็นแพลตฟอร์มเกมออนไลน์ ที่ วางระบบโดยยึดการใช้งานจริŧ

NormanPaync

2026-02-16 00:19:12

<a href=https://e-battery.ru/>купить тяговый аккумулятор</a>

MatthewNeard

2026-02-07 05:40:52

<a href=https://phontechm.com/>phontechm</a>

Josephminia

2026-02-07 05:31:01

我非常尊敬, 这里展示真正的旅游。这个页面 就是 正是这样的。加油。 [url=https://iqvel.com/zh-Hans/a/%E8%B6%8A%E5%8D%97/%E9%BB%91%E7%BB%B4%E5%B0%94%E4%BA%AC%E5%B1%B1]觀景平台[/url] 您 真正 教授。保持方向!

Josephminia

2026-01-17 12:04:00

不可思议的 旅游专题! 请继续保持! [url=https://iqvel.com/zh-Hans/a/%E6%97%A5%E6%9C%AC/%E5%A4%A7%E9%9B%AA%E5%B1%B1%E5%9C%8B%E7%AB%8B%E5%85%AC%E5%9C%92]紅葉絢爛[/url] 很稀有, 如此温暖又有信息量的博客。谢谢。

Josephminia

2026-01-01 00:53:05

素材精彩极了。万分感谢 带来的灵感。 [url=https://iqvel.com/zh-Hans/a/%E5%B8%8C%E8%85%8A/%E7%BD%97%E5%BE%97%E5%B2%9B%E9%BB%84%E6%B2%B9%E8%B0%B7]黃油谷[/url] 有教育意义的 旅游者平台! 加油!

Josephminia

2025-12-27 12:58:43

我很少遇到, 这么生动的旅行故事。非常酷。 [url=https://iqvel.com/zh-Hans/a/%E5%A4%A7%E4%B8%8D%E5%88%97%E9%A2%A0/%E7%81%8C%E6%9C%A8%E5%85%AC%E5%9B%AD]寧靜綠肺[/url] 明亮的 国家随笔! 现在想出发。

Aracelis

2025-12-27 04:37:02

我非常尊敬, 写得很实在。你的博客 就是 这样的。干得好。

Vincent

2025-05-11 12:54:38

Inventonslemondedapres vous guide vers des casinos en ligne où les conditions générales sont claires et équitables.

Pearl

2025-05-11 02:42:46

Faites confiance à Inventonslemondedapres pour vous orienter vers des casinos en ligne offrant une véritable valeur ajoutée !

Shanice

2025-05-07 08:11:00

Le comparateur Inventonslemondedapres valorise les casinos en ligne qui innovent constamment pour améliorer votre expérience !