第十周作業 LIS LCS

2021-10-05 14:01:43 字數 909 閱讀 2497

一、題目

東東有兩個序列a和b。

他想要知道序列a的lis和序列ab的lcs的長度。

注意,lis為嚴格遞增的,即a1input

5 5

1 3 2 5 4

2 4 3 1 5

output

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...