1 条题解

  • 0
    @ 2025-4-7 21:19:29

    C :

    #include <stdio.h>
    int main()
    {
    	int  n,i,j,temp,p;
    	int  a[10000];
    	scanf("%d",&n);
    	while( n!= 0 )
    	{	
    		for(i=0;i<n;i++)
    		scanf("%d",&a[i]);
    		for(i=1;i<n;i++)
    			{	
    				temp = a[i];
    				for(j=i-1;j>=0 && temp<a[j];j--)
    				{
    					a[j+1]=a[j];
    				}
    				a[j+1]=temp;
    			}
    			if(n%2 != 0)
    			printf("%d\n",a[n/2]);
    			else if(n%2==0)
    			{
    			p=(a[n/2]+a[(n/2)-1] )/2;
    			printf("%d\n",p);
    			}
    			scanf("%d",&n);
    	}
    	return 0;
    }
    

    C++ :

    #include <iostream>
    #include <algorithm>
    using namespace std;
    
    int main()
    {
    
    	int n;cin>>n;
    	while(n!=0)
    	{
    		int *arr = new int[n];
    		for(int i=0; i<n; ++i)
    			cin>>arr[i];
    
    		sort(arr,arr+n);
    		
    		int mid = n>>1;
    		if(n&1==1)
    			cout<<arr[mid]<<endl;
    		else
    			cout<<((arr[mid-1]+arr[mid])>>1)<<endl;
    	
    		cin>>n;
    	}
    	return 0;
    }
    
    

    Pascal :

    var i,j,k,l,n,m:longint;
    a:array[0..100000]of longint;
    begin
    readln(n);
    while n<>0 do
    begin
    for i:=1 to n do readln(a[i]);
    for i:=1 to n do
    for j:=1 to n do
    if a[i]<a[j] then
    begin l:=a[i];a[i]:=a[j];a[j]:=l;end;
    if n mod 2=1 then writeln(a[n div 2+1]);
    if n mod 2=0 then writeln((a[n div 2]+a[n div 2+1])div 2);
    readln(n);
    end;
    end.
    

    Java :

    
    
    import java.util.Arrays;
    import java.util.Scanner;
    
    public class Main {
        private static Scanner s = new Scanner (System.in) ;
        
        public static void main(String[] args) {
        	while(true){
    		int N = s.nextInt() ;
    		if(N==0){
    			break ;
    		}
    		int a[] = new int[N] ;
    		for (int i = 0; i < N; i++) {
    			
    				a[i] = s.nextInt() ;
    		}
    			Arrays.sort(a) ;
    			if(a.length%2==0){
    				System.out.println((a[a.length/2]+a[a.length/2-1])/2);
    			}else {
    				System.out.println(a[a.length/2]);
    			}
    		}
        	}
    	}
    
    
    • 1

    信息

    ID
    1170
    时间
    1000ms
    内存
    32MiB
    难度
    (无)
    标签
    递交数
    0
    已通过
    0
    上传者