讨论 / 经过多次参考与提交,总算也AC了。
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;

}

查看更多回复
提交回复