- 版块P5738 【深基...
- 楼主老庞啥也不会
- 发帖时间2020-11-19 21:06
- 题目P5738 【深基7.例4】歌唱比赛
#include<stdio.h>
int main()
{
int n , m;
scanf("%d%d" , &n , &m);
double ans = 0;
for(int i = 1 ; i <= n ; i++)
{
double count = 0;
int maxx = -1;
int minn = 11;
for(int j = 1 ; j <= m ; j++)
{
int c;
scanf("%d" , &c);
if(maxx < c)
{
maxx = c;
}
if(minn > c)
{
minn = c;
}
count += c;
}
count -= maxx + minn;
if(count > ans)
{
ans = count;
}
}
printf("%.2lf",ans/(m - 2));
return 0;
}
当前的总分是所有输入的数据加起来的和减去最大值和最小值。
要使答案最大就需要保证总值最大
之后输出就好了
而且这样也保证了不会出现精度问题
@玩玩就好7744 好嘞谢谢宁
@NSObject 题解里都是c++我不会
#include<stdio.h>
int main()
{
void sort(int m,int n,int a[100][100]);
int m,n,a[100][100];
double t;
scanf("%d %d",&m,&n);
int i,j;
for(i=0;i<m;i++)
for(j=0;j<n;j++)
scanf("%d",&a[i][j]);
sort(m,n,a);
return 0;
}
void sort(int m,int n,int a[100][100])
{
double max(int m,double b[100]);
int f,k;
double b[100]={0},c;
int i,j;
for(i=0;i<m;i++){
f=k=a[i][0];
for(j=0;j<n;j++){
if(f<a[i][j])
f=a[i][j];
else if(k>a[i][j])
k=a[i][j];
b[i]+=a[i][j];
}
if(n<=2)
b[i]=b[i]/n;
else
b[i]=(b[i]-f-k)/(n-2);
}
c=max(m,b);
printf("%.2f",c);
}
double max(int m,double b[100])
{
int i;
double d;
d=0;
for(i=0;i<m;i++){
if(d<b[i])
d=b[i];
}
return(d);
}
只会c的脆弱萌新
#include<stdio.h>
struct stu
{
int score[20];
}stu[100];
int main()
{
int n,m,i,j,sum=0;
float max=0,min=10;
float s[20];
scanf("%d%d",&n,&m);
for(i=0;i<n;i++)
{
for(j=0;j<m;j++)
{
scanf("%d",&stu[i].score[j]);
}
printf("\n");
}
for(i=0;i<n;i++)
{
for(j=0;j<m;j++)
{
if(stu[i].score[j]>max)
{
max=stu[i].score[j];
}
if(stu[i].score[j]<min)
{
min=stu[i].score[j];
}
sum+=stu[i].score[j];
}
s[i]=(sum-max-min)/(m-2);
sum=0;
}
max=0;
for(i=0;i<n;i++)
{
if(s[i]>max)
max=s[i];
}
printf("%0.2f",max);
}
救救孩子吧