計蒜客 刪除最少的元素

2021-09-16 12:00:08 字數 790 閱讀 4483

問題描述

給定有 n 個數的 a 序列:a1,a2,a3…an 。對於這個序列,我們想得到乙個子串行 ap1,ap2⋯api⋯apm(1≤p1< p2<⋯pi<⋯< pm≤n),滿足 ap1≥ap2≥⋯≥api≤⋯≤apm 。從 a 序列最少刪除多少元素,可以得到我們想要的子串行。 

輸入格式

第一行輸入乙個整數 n,代表 a 序列中數字的個數。第二個輸入 n 個整數,代表a1,a2 ,a3 …an。(1≤n≤1000,1≤ai≤10000) 

輸出格式

輸出需要刪除的元素個數,佔一行。 

樣例輸入

7 3 2 4 1 2 5 3 

樣例輸出

2

#includeusing namespace std;

int n;

//dp1從前到後的lds,dp2從後往前的lds

int dp1[1010]=,dp2[1010]=;

int a[1010];

void lds1()

} }}void lds2()

} }}int main()

lds1();

lds2();

int ans=0x3f3f3f3f;

for(int i=1;i<=n;i++)

printf("%d\n",ans);

return 0;

}

計蒜客習題 刪除最小元素

開乙個二維dp陣列dp 10005 3 第二維儲存的是這個數列的兩種狀態所對應的最大值,和lis思路比較像。開始的時候忽視了全部降序的情況,後來把兩個維度全部算一遍就出來了。include include include include include include include include...

計蒜客 元素移除

給定乙個陣列和乙個數 該數不一定在陣列中 從陣列裡刪掉這個數字,返回剩下的陣列長度。如 a a 1,2,3,4,5,要刪除數字 33,那麼返回陣列長度為 44。親愛的小夥伴們,題目是不是很簡單呢?其中,n代表陣列長度,elem代表要刪掉的元素。輸入格式 第一行輸入乙個數 n 1 n 100 接下來一...

計蒜客 配對元素

給出2個序列a b 從a b中各選出n個元素進行一一配對 可以不按照原來在序列中的順序 並使得所有配對元素差的絕對值之和最大。輸入格式 輸入的第1行為1個整數n 第2行包含n個整數,題目中的a序列。第3行包含n個整數,題目中的b序列。輸出格式 乙個數,最大配對 3與6配對,2與7配對,5與4配對,6...