DP TYVJ P1049 最長不下降子串行

2021-06-20 20:55:07 字數 460 閱讀 3261

原題:

型別:dp

原始碼:

#include#includeusing namespace std;

int main()

for(int i=n-1;i>=1;i--)

}if(l>0)

}int max=0;

for(int i=1;i<=n;i++) }

printf("%d",max);

system("pause");

return 0;

}

最後狀態:ac

總結:想了半天也沒做出來,問了mj也沒做出來,最後看的題解

主要思想是對於b[n],由於是最後乙個,b[n]=1; 隻後b[i]就從b[i+1]搜到b[n],如果搜到的數比b[i]大,那麼以該數為起始的最長不下降子串行可以作為b[i]的後繼,每次搜完找個最大的+1即可,找出max即可

tyvj P1049 最長不下降子串行

描述 description 求最長不下降子串行的長度 輸入格式 input format 第一行為n,表示n個數 第二行n個數 輸出格式 output format 最長不下降子串行的長度 樣例輸入 sample input 樣例輸出 sample output 時間限制 time limitat...

TYVJ P1049 最長不下降子串行

最長不下降子串行 描述 description 求最長不下降子串行的長度 輸入格式 inputformat 第一行為n,表示n個數 第二行n個數 輸出格式 outputformat 最長不下降子串行的長度 樣例輸入 sampleinput 複製資料 3 1 2 3 樣例輸出 sampleoutput...

最長不下降子串行

a1 t0 an a an 1 2 b an c d n 1 求該序列最長不下降子串行長度 n不是很大顯然可以暴力。n很大呢?那就不斷減迴圈節長度直至減到乙個閾值內,再暴力。正確性顯然,只要閾值不要設太小。include include include define fo i,a,b for i a...