Uriel's Corner

Research Associate @ Harvard University / Research Interests: Computer Vision, Biomedical Image Analysis, Machine Learning
posts - 0, comments - 50, trackbacks - 0, articles - 594

POJ 2379 ACM Rank Table---模拟

Posted on 2009-09-03 01:53 Uriel 阅读(405) 评论(0)  编辑 收藏 引用 所属分类: POJ模拟

模拟ACM比赛的boardingWA 14 次,搞了两天,在群里还问了,搞得很囧,太痛苦了
注意:如果一个队一题都没AC但是WA了几次的要排在一次都没交过的队之后。。WA 14次就因为这不清楚。。。

/*Problem: 2379  User: Uriel 
   Memory: 592K  Time: 16MS 
   Language: C++  Result: Accepted
*/
 

#include
<stdio.h>
#include
<stdlib.h>

struct M{
    
int tm;//记录总时间 
    int pb;//记录AC的题数 
    int flag;//记录该队编号 
    int syl;//记录是否提交过该题 
    int J[50];//记录该题是否AC 
    int W[50];//记录罚时 
}
T[1010];

struct In{
    
int c;
    
int p;
    
int t;
    
int r;
}
Q[1010];

int cmp1( const void *a , const void *b ) 

    
struct M *= (M *)a; 
    
struct M *= (M *)b; 
    
if(c->pb != d->pb)return d->pb - c->pb;
    
if(c->tm != d->tm)return c->tm - d->tm;
    
return c->flag - d->flag;
}
 

int cmp( const void *a ,const void *b) 

     
return (*(struct In *)a).t > (*(struct In *)b).t ? 1 : -1
}
   

int i,c,p,t,r,C,N,j;
int main()
{
    scanf(
"%d %d",&C,&N);
    
for(i=1;i<=C;i++)
    
{
        T[i].tm
=0;
        T[i].pb
=0;
        T[i].flag
=i;
        
for(j=1;j<50;j++)
        
{
            T[i].J[j]
=0;
            T[i].W[j]
=0;
        }

    }

    
for(i=0;i<N;i++)
    
{
        scanf(
"%d %d %d %d",&Q[i].c,&Q[i].p,&Q[i].t,&Q[i].r);
    }

    qsort(Q,N,
sizeof(Q[0]),cmp);
    
for(i=0;i<N;i++)
    
{
        
if(Q[i].r==1 && !T[Q[i].c].J[Q[i].p])
        
{   
            T[Q[i].c].pb
++;
            T[Q[i].c].J[Q[i].p]
=1;
            T[Q[i].c].tm
+=Q[i].t+T[Q[i].c].W[Q[i].p];
        }

        
else if(Q[i].r==0 && !T[Q[i].c].J[Q[i].p])
        
{
            T[Q[i].c].W[Q[i].p]
+=1200;
        }

            
    }

    
for(i=1;i<=C;i++)T[i].flag=i;
    qsort(
&T[1],C,sizeof(T[1]),cmp1); 
    
for(i=1;i<C;i++)printf("%d ",T[i].flag);
    printf(
"%d\n",T[C].flag);
    system(
"PAUSE");
    
return 0;
}



只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理