dd愛科學1 0(牛客)

2022-09-04 22:06:24 字數 946 閱讀 2354

大科學家dddddd最近在研究轉基因白菜,白菜的基因序列由一串大寫英文本母構成,dddddd經過嚴謹的推理證明發現,只有當白菜的基因序列呈按位非遞減形式時,

這株白菜的高附加值將達到最高,於是優秀的dddddd開始著手修改白菜的基因序列,dddddd每次修改基因序列的任意位需要的代價是111,dddddd想知道,

修改白菜的基因串行使其高附加值達到最高,所需要的最小代價的是多

少。類似於最長公共子串行的變形?

我們設最長公共子串行為lsc(x,y),看看最長公共子串行的狀態轉移方程:

我們再分析這道題,輸入的字串如果要更改的少,那就要按『a』到『z』順序可重複的公共子串行最長。

設滿足條件的子串行為f(x,y),

當a[n]!=b[m]時,我們會產生兩個子問題:

因為a[n]!=b[m],兩個字串的最後乙個字元中肯定有乙個不是f(x,y),解決以上兩個子問題,找到最優解。

當a[i]=b[i]時,我們也會遇到這兩種情況:

不同的是,長度都能+1,因為a[n]=b[m],可以選擇兩種情況的最大值進行比較。

最後我們得出狀態方程:

就是這樣了,o((>ω< ))o!

accode:

char a[1000100

],p;

ll n,dp[

1000100][28

];int

main()

}cout

<< n - dp[n][25];//

減去f(n,25)就可以得到需要改變的最小值了。

return0;

}

day3 2019 4 9牛客網10題

1 有一台系統為linux的計算機,在其當前目錄下有乙個名為test的文字檔案,管理員小張要用vi編輯器開啟該文件以檢視其中的內容,應使用 vi test 命令.2 下列哪些命令可以測試網路通不通?ping 3 在rhel5系統中,在vi編輯器環境中的任意時刻,選擇 esc 鍵後,編輯器將進入 命令...

牛客練習賽10第二題

include include include include include define ll long long define n 1000009 using namespace std int a n n int b n r int maxn n int main printf d n b ...

牛客網 資料庫SQL實戰10

獲取所有非manager的員工emp no create table dept manager dept no char 4 not null emp no int 11 notnull from date date notnull to date date notnull primary key ...