qscmx 2011-12-16 07:48:00
点我顶贴
收藏
删除
#include <stdio.h>
long n,k,p,color[51][200001]={0},prize[200001]={0};
int main()
{
long x,i,j,a,b,ans=0,t;
scanf("%ld%d%d",&n,&k,&p);
for (i=1;i<=n;i++)
{
scanf("%d%d",&x,&prize[i]);
color[x][++color[x][0]]=i;
}
for(i=0;i<k;i++)
for(j=1;j<=color[i][0];j++)
{ t=0;
if(prize[color[i][j]]<=p) {ans+=color[i][0]-j;continue;}
for(a=j+1;a<=color[i][0];a++)
if(prize[color[i][a]]<=p) {ans+=color[i][0]-a+1;break;}
else
{ for(b=color[i][j]+1;b<color[i][a];b++)
if(prize[b]<=p) {t=1;break;}
if(t==1) {ans+=color[i][0]-a+1;break;}
}
}
printf("%d",ans);
return 0;
}