洛谷最大子樹和解題報告

2021-07-25 09:24:33 字數 596 閱讀 7955

不知為什麼我做這道題莫名吃力,最後還是看了題解,大概是搜尋沒有學好的緣故吧。最近總是在學習一些其他的東西,現在看來還是打好基礎為妙。這道題其實不難,開三個陣列pre,next,last儲存邊與點的關係。不妨從1開始搜尋,找每條與它相鄰的邊,依次算出他們的最大子樹和,若大於零便累計起來。最後加上1節點的美麗指數,就是以1為根的最大子樹和了,其他的同理。

#include

using

namespace

std;

int next[40000],pre[40000],last[40000],book[20000],a[20000],f[20000],num=0,ans=-2147483648;

int merge(int x,int y)

int search(int x)

i=pre[i];

}f[x]=sum+a[x];

if(f[x]>ans)

ans=f[x];

return f[x];

}int main()

book[1]=1;

search(1);

cout

0; }

洛谷1115 最大子段和 解題報告

給出一段序列,選出其中連續且非空的一段使得這段和最大。輸入格式 輸入檔案maxsum1.in的第一行是乙個正整數n,表示了序列的長度。第2行包含n個絕對值不大於10000的整數a i 描述了這段序列。輸出格式 輸入檔案maxsum1.out僅包括1個正整數,為最大的子段和是多少。輸入樣例 1 7 2...

樹形DP 洛谷1122 最大子樹和

又是一道樹形dp的入門題,思想非常簡單 然而我最開始還是存了兩個狀態 傳送門 小明對數學飽有興趣,並且是個勤奮好學的學生,總是在課後留在教室向老師請教一些問題。一天他早晨騎車去上課,路上見到乙個老伯正在修剪花花草草,頓時想到了乙個有關修剪花卉的問題。於是當日課後,小明就向老師提出了這個問題 一株奇怪...

洛谷P1122 最大子樹和

提交該題 討論 題解記錄 小明對數學飽有興趣,並且是個勤奮好學的學生,總是在課後留在教室向老師請教一些問題。一天他早晨騎車去上課,路上見到乙個老伯正在修剪花花草草,頓時想到了乙個有關修剪花卉的問題。於是當日課後,小明就向老師提出了這個問題 一株奇怪的花卉,上面共連有n 朵花,共有n 1條枝幹將花兒連...