讨论 / 。。。
小牛啃草 2012-11-03 19:06:00
点我顶贴 收藏 删除
program v655;

var i,j,n,p,ch,ans,head,x,k0:longint;

a,b,sum:array[0..200000]of longint;

k,h:array[0..50]of longint;

next:array[1..200000]of longint;

begin

readln(n,k0,p);

ch:=0;

fillchar(sum,sizeof(b),0);

fillchar(k,sizeof(k),0);

fillchar(h,sizeof(h),0);

for i:=1 to n do

begin

readln(a[i],b[i]);

if b[i]<=p

then

begin

inc(ch);

sum[i]:=ch;

end;

inc(h[a[i]]);

if k[a[i]]=0

then k[a[i]]:=i

else

begin

next[i]:=k[a[i]];

k[a[i]]:=i;

end;

end;

ans:=0;

for i:=0 to 49 do

begin

if k[i]=0 then continue;

head:=k[i];

j:=0;

while next[head]<>0 do

begin

inc(j);

x:=next[head];

if sum[head]-sum[x-1]>0

then ans:=ans+h[i]-j;

head:=x;

end;

end;

writeln(ans);

readln;

end.

查看更多回复
提交回复