讨论 / 帮帮忙,提交n次了-_-!
mnb 2011-01-24 01:32:00
点我顶贴 收藏 删除
#include "stdio.h"

struct

{

int h,x[15],b,sum;

}s[1100],t;

int f(int n)

{

return(n*n);

}

int main()

{

int m,n,k,i,j;

scanf("%d%d%d",&n,&m,&k);

for(i=0;i<n;i++)

{

s[i].sum=0;

s[i].h=i;

for(j=0;j<k;j++)

{

scanf("%d",&s[i].x[j]);

s[i].sum+=s[i].x[j];

}

s[i].sum=s[i].sum/k;

}

for(i=0;i<n;i++)

for(j=i;j<n;j++)

{

if(s[i].sum<s[j].sum){t=s[i];s[i]=s[j];s[j]=t;}

else if(s[i].sum==s[j].sum){int s1=0,s2=0;

for(int u=0;u<k;u++)

{

s1+=f(s[i].x[u]);

s2+=f(s[j].x[u]);

}

s1=s1*k*f(s[i].sum)/k;

s2=s2*k*f(s[i].sum)/k;

if(s1>s2){t=s[i];s[i]=s[j];s[j]=t;}

else if(s1==s2){if(s[i].h>s[j].h){t=s[i];s[i]=s[j];s[j]=t;}}}

}

for(i=0;i<m;i++)

printf("%d ",s[i].h+1);

getchar();

getchar();

}

#1 mnb@2011-01-24 01:28:00
回复 删除
回复 楼主mnb 的帖子

咋搞

#2 rw@2011-01-24 01:29:00
回复 删除
回复 楼主mnb 的帖子

漫漫看

#3 rw@2011-01-24 01:32:00
回复 删除
回复 楼主mnb 的帖子

小于号搞反了

查看更多回复
提交回复