看球的巴士(vijos1331)

2021-05-28 16:05:22 字數 795 閱讀 6572

演算法:dp

挺簡單的,但是一開始卻想成了區間dp……

program vijos1331;

const

maxn=2500;

var n,m:longint;

a:array [0..maxn] of char;

f:array [0..maxn] of longint;

procedure init;

var i:longint;

begin

readln(n,m);

for i:=1 to n do readln(a[i]);

end;

procedure main;

var i,j,th,tj:longint;

begin

fillchar(f,sizeof(f),$2f);

f[0]:=0;

f[1]:=1;

for i:=2 to n do

begin

if a[i]='h' then

begin

th:=1;

tj:=0;

endelse

begin

th:=0;

tj:=1;

end;

for j:=i-1 downto 1 do

begin

if a[j]='h' then inc(th) else inc(tj);

if (abs(th-tj)<=m) or (th=0) or (tj=0) then

begin

if f[j-1]+1

看球的巴士 線性dp

題目描述 兩個球隊的支持者要一起坐車去看球,他們已經排成了一列。我們要讓他們分乘若干輛巴士,同一輛巴士上的人必須在隊伍中是連續的。為了在車上不起衝突,希望兩隊的支持者人數盡量相等,差至多是d。有乙個例外,就是一輛車上的人全部都是乙個球隊的支持者。問要將這n個人全部送至球場,至少要幾輛巴士。輸入格式 ...

看球的歷史

看球的歷史 首先需要指出的是,題目中的球是指足球。昨晚和一些哥們看了一下德甲,使我不禁勾起對以前看球的一些回憶。嚴格說來,踢球始於初中,看球始於高中。記憶中開始看電視時 上個世紀 80年代 很討厭看到兩樣東西 足球 那時廣東體育頻道好像正在轉播英超 f1賽車 那時正是塞納統治 f1的時代,可惜我那時...

看球的歷史

看球的歷史 首先需要指出的是,題目中的球是指足球。昨晚和一些哥們看了一下德甲,使我不禁勾起對以前看球的一些回憶。嚴格說來,踢球始於初中,看球始於高中。記憶中開始看電視時 上個世紀80年代 很討厭看到兩樣東西 足球 那時廣東體育頻道好像正在轉播英超 f1賽車 那時正是塞納統治f1的時代,可惜我那時無法...