程式設計之美2015資格賽 回文子串行個數題解

2021-07-02 03:08:08 字數 743 閱讀 9420

給定字串,求它的回文子串行個數。回文子串行反轉字元順序後仍然與原序列相同。例如字串aba中,回文子串行為」a」, 「a」, 「aa」, 「b」, 「aba」,共5個。內容相同位置不同的子串行算不同的子串行。

樣例輸入

5

abaabcbaddabcba

12111112351121

ccccccc

fdadfa

樣例輸出

case

#1: 5

case

#2: 277

case

#3: 1333

case

#4: 127

case

#5: 17

一開始就想到用動態規劃來解,但是一直找不到遞推公式。

剛開始想到把原始字串逆序,求與原來的字串的公共子串行個數,像求最長公共子串那樣,後來沒找到遞推公式。

於是換了乙個思路,令d(i,j)表示字串s中,從i到j的子串的回文子串行個數,則有遞推公式如下: d(

i,j)

= for(int i = 1;i < len ; i++)else

if(a[j][i+j] > 100007)}}

return a[0][len-1];

}int main()

return

0;}ps:一次ac的感覺實在太爽了!!!

程式設計之美2015資格賽

時間限制 2000ms 單點時限 1000ms 記憶體限制 256mb 給定兩個日期,計算這兩個日期之間有多少個2月29日 包括起始日期 1.年份能被4整除但不能被100整除 2.年份能被400整除 第一行為乙個整數t,表示資料組數。之後每組資料報含兩行。每一行格式為 month day,year ...

程式設計之美資格賽

時間限制 2000ms 單點時限 1000ms 記憶體限制 256mb 給定2個樹a和b,保證a的節點個數 b的節點個數。現在你需要對樹a的邊進行二染色。乙個好的染色方案,指不存在乙個樹a中的連通塊,同時滿足以下2個條件 1.其中只有同色的邊 2.和b同構。兩個樹同構是指,存在乙個一一對映 既是單射...

2015程式設計之美(資格賽) 基站選址

時間限制 2000ms 單點時限 1000ms 記憶體限制 256mb 第一行為乙個整數t,表示資料組數。每組資料第一行為四個整數 n,m,a,b。接下來的a b行每行兩個整數x,y,代表乙個座標,前a行表示各使用者的座標,後b行表示各通訊公司的座標。對於每組資料輸出一行 case x y x代表資...