7-14互评成绩

it2022-05-05  169

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; }

最新回复(0)