一、題目
東東有兩個序列a和b。
他想要知道序列a的lis和序列ab的lcs的長度。
注意,lis為嚴格遞增的,即a1input
5 5output1 3 2 5 4
2 4 3 1 5
3 2五、解題思路
動態規劃。
lis:最長上公升序列。轉移方程為fi=max+1,即取值比它小的,而且位置比它靠前的長度最大值+1。maxf[i]即為最長的序列。
lcs:最長公共子串行。轉移方程為當ai==bj時,f[i][j]=f[i-1][j-1]+1,否則,f[i][j]=max(f[i-1][j],f[i][j-1])。即找到相等元素時,則結果+1,如果不想等,則取相鄰兩個中較大的。f[n][m]即為結果。
六、樣例**
#include
using
namespace std;
#define maxn 5500
int f[maxn]
;int ff[maxn]
[maxn]
;int a[maxn]
,b[maxn]
;int n,m;
void
solve
(int n)
} f[i]
=maxi+1;
}}void
solve2
(int n,
int m)}}
intmain()
第十周作業
1.感觸太多!讓我醍醐灌頂 2.很有教育意義 3.看您的文章真的是享受。觀察問題和思考原因,最後給出解決辦法!每每一針見血。1.公司員工要想長久要給員工提供提公升空間,讓員工替老闆幹,轉變為員工為自己幹。2.學習能力尤為重要,我們要不斷學習提公升自身能力 3.給出清晰 明確的目標,知道自己該幹嘛,知...
第十周作業
本次作業所屬課程 c語言程式設計 本次作業要求 我在這個課程的目標是 學會熟練使用結構型別 本次學習在哪些具體方面幫組我實現目標 自己定義結構還是會方便很多 參考文獻 c primer plus第六版 一 劉未鵬的部落格 怎樣花兩年時間面試乙個人 a 實踐是檢驗真理的唯一標準!能說會道的前提是你要有...
第十周作業
十一周上機作業 cola公司的雇員分為以下若干類 知識點 多型 1 colaemployee 這是所有員工總的父類,屬性 員工的姓名,員工的生日月份。方法 getsalary int month 根據引數月份來確定工資,如果該月員工過生日,則公司會額外獎勵100 元。2 salariedemploy...