time limit: 10 sec
memory limit: 162 mb
submit: 200
solved: 114 [
submit][
status][
discuss]
給出乙個長度為 的正整數序列ci,求乙個子串行,使得原序列中任意長度為 的子串中被選出的元素不超過k(k,m<=100) 個,並且選出的元素之和最大。
第1行三個數n,m,k。 接下來n行,每行乙個字串表示ci。
最大和。
10 5 3
4 4 4 6 6 6 6 6 4 4
3020%的資料:n<=10。
100%的資料:n<=1000,k,m<=100。ci<=20000。
解題思路:同noi2008招募。此處是最大費用最大流
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define inf 1000000000
#define pa pair
#define ll long long
#define mod 1000000007
using
namespace
std;
intread()
while(ch
>=
'0'&&
ch<=
'9')
returnx*
f; }
intn,
m,cnt=1,
k,t,
ans;
inta[
2005],
q[2005],
last
[2005],
dis[
2005];
bool
inq[
2005],
mark
[2005];
struct
edgee[
10005];
void
insert
(intu,
intv
,intw,
intc)
bool
spfa()
} }
return
dis[0]
!=-1;
}void
build()
for(
inti=1
;i<=n-
m+1;
i++)
insert(i
,i+1
,k,0
);
insert(0
,n+2
,k,0
);
insert(n
+1,t
,k,0
); }
intdfs(
intx
,intf)
return
used;
} void
zkw() }}
intmain()
bzoj1283 序列 線性規劃與費用流
題目描述 給出乙個長度為 的正整數序列ci,求乙個子串行,使得原序列中任意長度為 的子串中被選出的元素不超過k k,m 100 個,並且選出的元素之和最大。輸入第1行三個數n,m,k。接下來n行,每行乙個字串表示ci。輸出最大和。樣例輸入 10 5 3 4 4 4 6 6 6 6 6 4 4 樣例輸...
bzoj1061 線性規劃
線性規劃裸題。根據題目很容易可以得到線性規劃方程 以樣例為例 min 2 x1 5 x2 2 x3 x1 0 0 2 x1 x2 0 3 0 x2 x3 4 x1,x2,x3 0 再將方程對偶,得到 max 2 x1 3 x2 4 x3 x1 x2 0 2 0 x2 x3 5 0 0 x3 2 x1...
BZOJ 1283 序列 費用流
題目大意 給定乙個長度為n的序列,要求選一些數,使得任意乙個長度為m個區間中最多選k個數,求最大的和 費用流直接跑就是了 把這個序列用流量為k費用為0的邊連成一條直線 然後第i個點向第i m個點連一條費用為a i 流量為1的邊 跑最大費用最大流即可 卡單純型差評。include include in...