<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      [Codeforces Round 876 (Div. 2)][Codeforces 1839D. Ball Sorting]

      題目鏈接:D - Ball Sorting

      題目大意:需要對一個排列按照指定操作進行排序。操作一:在數字間插入一個特殊點,可執行不超過 \(k\) 次;操作二:將在特殊點旁的數移動到任意位置。所有操作結束后特殊點會消失,要求對所有 \(k\in [1,n]\),求出操作二的最少操作次數。

      分析題意可以得出,操作一放置的特殊點之作用就是將包含他在內的一個區間傳送到對應的位置。那么所有的傳送完成之后想要有序,就需要那些未被傳送區間覆蓋的位置本身構成一個上升子序列。而這些傳送的代價就是被覆蓋的區間長度之和。于是就可以考慮 \(\texttt{DP}\) ,設 \(f(i,j)\) 表示處理完前 \(i\) 個位置,放入了 \(j\) 個特殊點時的最小代價。

      考慮如何具體設立狀態,注意到如果直接貪心考慮第 \(i\) 個位置被覆蓋的情況然后轉移,可能就會出現不能直接貪心的情況,如 5 4 3 1 2。此時如果直接貪,到 \(3\) 這個位置時會直接選擇把 \(\{4,3\}\) 覆蓋掉,把 \(5\) 作為上升子序列的一部分,而最優的方案則是把 \(\{1,2\}\) 作為未被覆蓋的位置,那么就需要令 \(f(3,1)=3\),這是不太好在轉移過程中處理的。于是我們令 \(f(i,j)\) 表達的含義為,當 \(i\) 作為上升子序列中的一部分時,放入 \(j\) 個特殊點的最小代價。

      考慮如何轉移,這時我們發現實際上和最長上升子序列的轉移形式差不多。直接枚舉上一個未被覆蓋位置 \(K\) 即可,需要保證 \(a_K<a_i\)。此時若 \(K<i-1\) 則表示中間出現了被覆蓋的區間,對應代價為 \(f(K,j-1)+i-K-1\),否則代價為 \(f(i-1,j)\),表示目前仍未放置新的特殊點。

      初始令 \(f(0,0)=0,a_{n+1}=n+1\),最終 \(f(n+1,k)\) 即為答案。

      #include<bits/stdc++.h>
      using namespace std;
      #define N 550
      int T,n,a[N],f[N][N];
      void init()
      {
      	scanf("%d",&n);
      	memset(f,0x3f,sizeof(f));
      	for(int i=1;i<=n;i++)scanf("%d",&a[i]);
      	a[n+1]=n+1;
      	f[0][0]=0;
      	for(int i=1;i<=n+1;i++)
      	for(int j=0;j<=i;j++){
      		if(j)f[i][j]=min(f[i][j],f[i][j-1]);
      		for(int k=i-1;k>=0;k--)if(a[k]<a[i])
      			if(k==i-1)f[i][j]=min(f[i][j],f[i-1][j]);
      			else if(j)f[i][j]=min(f[i][j],f[k][j-1]+i-k-1);
      	}
      	for(int i=1;i<=n;i++)printf("%d%c",f[n+1][i],i<n?' ':'\n');
      }
      int main()
      {
      	scanf("%d",&T);
      	while(T--)init();
      }
      
      posted @ 2023-06-10 15:29  DeaphetS  閱讀(120)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 国产精品国产三级国AV| 欧洲美女黑人粗性暴交视频 | 91精品国产综合蜜臀蜜臀| 无码精品人妻一区二区三区中| 亚洲无av中文字幕在线| 一区二区三区成人| 在线播放亚洲成人av| 亚洲一区二区在线无码| 国产成人精品日本亚洲网站| 色悠久久网国产精品99| 国产午夜亚洲精品国产成人| 偷拍专区一区二区三区| 日韩伦理片| 国产尤物精品自在拍视频首页| 日本妇人成熟免费| 婷婷四房播播| 国产一级精品毛片基地| 亚洲精中文字幕二区三区| 欧洲中文字幕国产精品| 日韩一级伦理片一区二区| 加勒比中文字幕无码一区| 亚洲第三十四九中文字幕| 日本另类αv欧美另类aⅴ| 国产极品美女高潮抽搐免费网站| 久久人与动人物a级毛片| 国产白嫩护士被弄高潮| 亚洲岛国成人免费av| 青草国产超碰人人添人人碱| 老司机午夜精品视频资源| 国内精品久久久久影院薰衣草| 97人妻精品一区二区三区| √天堂中文www官网在线| 麻豆国产成人AV在线播放| 亚洲国产理论片在线播放| 亚洲成在人线AV品善网好看| 日韩人妻无码一区二区三区久久| 亚洲精品岛国片在线观看| 国产综合久久亚洲综合| 深夜av在线免费观看| 在线精品国产中文字幕| 久久精品国产99精品亚洲|