import java
.io
.*
;
import java
.util
.StringTokenizer
;
public class S7_14 {
static int n
,k
,m
;
static int[] rec
;
static double[] score
;
public static void main(String
[] args
) throws IOException
{
DecimalFormat df
= new DecimalFormat("0.000");
R
.init(System
.in
);
n
= R
.nextInt();
k
= R
.nextInt();
m
= R
.nextInt();
rec
= new int[k
];
score
= new double[n
];
for (int j
= 0; j
< n
; j
++) {
for (int i
= 0; i
< k
; i
++) {
rec
[i
] = R
.nextInt();
}
Arrays
.sort(rec
);
int sum
= 0;
for (int i
= 1; i
< k
- 1; i
++) {
sum
+= rec
[i
];
}
score
[j
] = sum
* 1.0 / (k
- 2);
}
Arrays
.sort(score
);
for (int i
= n
- m
; i
< n
; i
++) {
if (i
!= n
- 1)System
.out
.print(df
.format(score
[i
]) + " ");
else System
.out
.print(df
.format(score
[i
]));
}
}
}
class R {
static BufferedReader reader
;
static StringTokenizer tokenizer
;
static void init(InputStream input
) {
reader
= new BufferedReader(new InputStreamReader(input
));
tokenizer
= new StringTokenizer("");
}
static String
next() throws IOException
{
while (!tokenizer
.hasMoreTokens()) {
tokenizer
= new StringTokenizer(reader
.readLine());
}
return tokenizer
.nextToken();
}
static int nextInt() throws IOException
{
return Integer
.parseInt(next());
}
static double nextDouble() throws IOException
{
return Double
.parseDouble(next());
}
}
#include<stdio.h>
#include<iostream>
#include<algorithm>
#include<iomanip>
using namespace std
;
double arr
[30];
int score
[15];
bool
cmp(double a
,double b
){
return a
<b
;
}
int main(){
int n
,k
,m
,Max
,Min
,index
=0;
double sum
;
cin
>>n
>>k
>>m
;
for(int i
=0;i
<n
;i
++){
for(int j
=0;j
<k
;j
++){
cin
>>score
[j
];
}
Max
=0,Min
=0;
sum
=0;
for(int j
=1;j
<k
;j
++){
if(score
[j
]>score
[Max
]){
Max
=j
;
}
else if(score
[j
]<score
[Min
]){
Min
=j
;
}
}
if(Min
==Max
){
sum
=score
[0];
}
else{
score
[Max
]=-1,score
[Min
]=-1;
for(int j
=0;j
<k
;j
++){
if(score
[j
]>=0){
sum
+=score
[j
];
}
}
sum
=sum
/(k
-2);
}
if(index
>=m
){
if(arr
[0]<sum
){
arr
[0]=sum
;
sort(arr
,arr
+m
,cmp
);
}
}
else{
arr
[index
++]=sum
;
sort(arr
,arr
+index
,cmp
);
}
}
for(int i
=0;i
<m
-1;i
++){
cout
<<setprecision(3)<<fixed
<<arr
[i
]<<' ';
}
cout
<<setprecision(3)<<fixed
<<arr
[m
-1];
return 0;
}
转载请注明原文地址: https://win8.8miu.com/read-11729.html