NYOJ 37回文字串

2022-05-24 09:57:06 字數 441 閱讀 3050

這道題看了好大會沒有思路,上網一搜發現這麼簡單,但是我為什麼就想不到呢,??就是求和它的逆序之後的字串最長公共子串行,然後用總的長度減去它就行了。原因是是因為只要是在公共子串行裡面,那麼他就是對稱的,少的那些就是需要補的

**如下:

1 #include2 #include3 #include4 #include5

using

namespace

std;67

const

int n = 1002;8

intdp[n][n];

9int

main()

1031

}32 printf("

%d\n

", len -dp[len][len]);33}

3435

return0;

36 }

NYOJ 37 回文字串

思想 在紙上測試幾組資料,發現先逆轉原來的字串,再用原來的字串跟逆轉後的字串進行比較,求得的最長公共子串行就是回文串,也就是不需要新增的,再用總長度減去最長公共子串行就可以得到最少需要新增的字元數。就簡單了,以前寫過的稍稍改下就直接貼上來了。include includeint f 1001 100...

nyoj 37 回文字串

時間限制 3000 ms 記憶體限制 65535 kb 難度 4 描述 所謂回文字串,就是乙個字串,從左到右讀和從右到左讀是完全一樣的,比如 aba 當然,我們給你的問題不會再簡單到判斷乙個字串是不是回文字串。現在要求你,給你乙個字串,可在任意位置新增字元,最少再新增幾個字元,可以使這個字串成為回文...

nyoj 37 回文字串

時間限制 3000 ms 記憶體限制 65535 kb 難度 4 描述 所謂回文字串,就是乙個字串,從左到右讀和從右到左讀是完全一樣的,比如 aba 當然,我們給你的問題不會再簡單到判斷乙個字串是不是回文字串。現在要求你,給你乙個字串,可在任意位置新增字元,最少再新增幾個字元,可以使這個字串成為回文...