引用大牛lnmm的思路
设ch[1]..ch[n]表示字符串1至n位,i为左游标,j为右游标 ,则i从n递减,j从i开始递增。
min[i][j]表示i和j之间至少需要插入多少个字符才能对称,初始置全0 ,我们最终需要得到的值是min[1][n]. 则
if(ch[i]==ch[j]) //如果两个游标所指字符相同,向中间缩小范围
min[i][j]=min[i+1][j-1];
else
min[i][j] = 1 + (min[i+1][j]和min[i][j-1]中的较小值); //如果不同,典型的状态转换方程
画个图
[cpp]
i\j 1 2 3 4 5
1 0 * * * *
2 0 0 * * *
3 0 0 * *
4 0 0 *
5 0 0
[/cpp]
求右上的三角形即可, 三个方向, 左, 下, 左下, 和算法导论里353页的图思路差不多, 意思不一样而已.
一个自以为比较有意思的空间优化是, 把头顺时针转45度看那个三角形.. 不讲了麻烦, 上代码..
404K 344MS G++
[cpp]
#include <stdio.h>
int main()
{
int n;
char a[5010];
scanf("%d",&n);
while(getchar()!=’\n’);
scanf("%s",a);
int c[10010];
for(int i=2;i<=2*n;i++) {
c[i]=0;
}
for(int x=1;x<=n-1;x++)
for(int i=1;i<=n-x;i++) {
int j=i+x;
char ai=a[i-1],aj=a[j-1];
if(ai==aj)
continue;
c[i+j]=c[i+j-1]<c[i+j+1]?c[i+j-1]:c[i+j+1];
c[i+j]++;
}
printf("%d\n",c[1+n]);
return 0;
}[/cpp]
References:
Lollybet Casino Bonus ohne Einzahlung https://forexsklad.org/
References:
Lollybet Registrierung http://toolbarqueries.google.at/url?sa=i&url=https://shotlink.site/mikki000370631
References:
Lollybet Casino Spielautomaten http://images.google.mn
References:
Lollybet Casino Lizenz http://runigma.com.ua/proxy.php?link=https://link.1hut.ru/dinaj40542037
References:
Lollybet Casino Treueprogramm http://cse.google.ie
References:
Lollybet Casino No Deposit Bonus google.no
References:
Lollybet Casino VIP xxx-files.org
References:
Lollybet Casino Bonus Code http://clients1.google.com.pr
References:
Lollybet Bewertung https://uaeplusplus.com/openwebsite.aspx?url=https://bladisnel.com/sharronmitten
References:
Lollybet Casino Bewertung https://toolbarqueries.google.com.nf/
References:
Lollybet Casino Registrierung buzulukinform.ru
References:
Lollybet Casino Promo Code https://ichcams.chaturbate.com/
References:
Lollybet Umsatzbedingungen http://maps.google.by/url?q=https://link.secret.kg/michaelabevins
References:
Lollybet No Deposit Bonus http://www.24subaru.ru
References:
Lollybet Casino App Download stadtdesign.com
References:
Lollybet Mobile Casino http://cse.google.com.bz
References:
Lollybet Casino 100 Freispiele http://clients1.google.je
References:
Lollybet Free Spins http://www.google.ps/url?sa=t&url=https://biokita.id/danial53h
References:
Paypal casinos rukorma.ru
References:
Online dating site https://jobcopae.com/employer/die-top-10-mobile-casino-apps-mit-echtgeld-spielen-2026/
References:
Real money pokies https://jobstak.jp/companies/die-top-10-mobile-casino-apps-mit-echtgeld-spielen-2026/
References:
Las vegas usa casino whoawho.com
References:
Slots of vegas casino https://winesandjobs.com/companies/offizielle-seite-slots-und-live-casino/
References:
Victoria casino https://www.new.jesusaction.org/bbs/board.php?bo_table=free&wr_id=3751249
References:
Lollybet Casino Bonusbedingungen https://mameli.docenti.di.unimi.it/svigruppo/search?q=https%3A%2F%2Fwerkstraat.com%2Fcompanies%2F1-000-bonus-slots-schnelle-auszahlung%2F
References:
Lollybet Casino Kundenservice https://ca.do4a.pro/proxy.php?link=https%3a%2f%2fcarrieresecurite.fr%2Fentreprises%2Fspielothek-mit-live-casino-jackpots%2F
References:
Lollybet Slots https://4cheat.org/goto/link-confirmation?url=aHR0cHM6Ly93d3cuam9iaW5kdXN0cmllLm1hL2NvbXBhbmllcy8xLTAwMC1ib251cy1zbG90cy1zY2huZWxsZS1hdXN6YWhsdW5nLw
References:
Lollybet Casino Neukundenbonus http://image.google.gy/url?q=https://www.milegajob.com/companies/lollybet-online-casino-slots-roulette-blackjack-mehr/
References:
Lollybet Casino VIP http://images.google.cg/url?sa=t&url=https://www.ukjobs.xyz/employer/lollybet-casino-bonus-%ef%b8%8f-freispiele-ohne-einzahlung/
References:
Lollybet Anmeldung http://maps.google.ru/url?q=https://www.theangel.fr/companies/bester-wettanbieter-vergleich-und-test-2026/