TYZ 8 25 LJM 交換!交換!

2021-07-22 02:36:02 字數 1489 閱讀 1393

題目大意

交換,交換!

【問題描述】

有一天,釗興給了某佳穆n本書,這n本書的有益程度分別是a[i],排成一排。然後釗興告訴他:我可以給你k次機會,你最多可以交換其中k對書的位置,然後在現在的排列中拿走其中連續的一段。

某佳穆是乙個正能量的人,他想使得自己拿走的這一段書有益程度加起來盡量大,所以他決定寫乙個程式來計算。

【輸入格式】

第一行n,k。

第二行n個數字,分別是a[i]。(-1000<=a[i]<=1000)

【輸出格式】

乙個數字,表示某佳穆最終拿走的這段書有益程度之和。

【輸入樣例】

10 2

10 -1 2 2 2 2 2 2 -1 10

【輸出樣例】

32

【資料範圍與約定】

對於100%的資料,n<=200,k<=10。

noip向來考模擬,這題也是考模擬,後面的題目模擬不了滿分的時候,模擬就叫暴力

這個你準備怎麼暴力呢?

做法是列舉每個區間,n^2,然後對於每個區間有前k小河區間外前k大的值,

然後列舉一下交換幾次

**如下

(注意這裡不要用vector,否則記憶體洩漏了很麻煩,可能mle)

#include#include#include#include#include#includeusing namespace std;

int k,n,a[300];

int t1,t2;

int dp[300][300][15];

const int inf=0x3f3f3f3f;

int ans=-inf;

int cmpup(int ***,int yyy)

int cmpdown(int ***,int yyy)

{ return ***tout||i>tin)

break;

int nwsum=sumofq;

int moveout=0,movein=0;

for(int j=0;j>n>>k;

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

scanf("%d",&a[i]);

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

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

deal(i,j);

cout<

8 2 5 例項分析

下面對以上 作簡要說明 1 按照常規步驟建立並拷貝 matrix rect 的matrx var mymatrix matrix matrix rect.transform.matrix 此處應該注意大小寫,transform 內部並不存在 matrix 物件。matrix 是矩陣類的名字,matr...

82 5 監控程序

列出某個程式程序所開啟的檔案資訊,顯示httpd程序現在開啟的檔案 lsof c httpd顯示多個程序命令用法 root netkiller lsof c smbd command pid user fd type device size off node name smbd 2506 root ...

CV大神講座感悟8 25

部落格做筆記,可以以後來翻看。這樣就留下了自己學習的記錄了,可能剛開始很簡單但是慢慢來逐漸積累自己的。遇到乙個問題怎麼解決 看書遇到問題就上網搜,谷歌 大神只是看書來培養起來。建議先看西瓜書,然後再看統計學習方法。實在看不懂,就看網路的 建議使用linux系統 資料收集的學習 網路選擇,是手機移動端...