7 solutions

  • 1
    @ 2025-7-21 10:53:58
    #include<bits/stdc++.h>
    using namespace std;
    const int N=310;
    double a[N];
    int main()
    {
    	int n;
    	cin>>n;
    	int maxid,minid;
    	double sum=0;
    	for (int i=1;i<=n;i++)
    	{
    		cin>>a[i];
    		if (i==1 || a[i]>a[maxid])
    		{
    			maxid=i;
    		}
    		if (i==1 || a[i]<a[minid])
    		{
    			minid=i;
    		}
    		sum+=a[i];
    	}
    	sum=sum-a[maxid]-a[minid];
    	double ave=sum/(n-2);
    	double res=0;
    	for (int i=1;i<=n;i++)
        
    	{
    		if (i==maxid || i==minid) continue; 
    		double t=abs(a[i]-ave);
    		if (t>res)
    		{
    			res=t;
    		}
    	}
    	cout<<fixed<<setprecision(2)<<ave<<" "<<res; 
    	return 0;
    }
    
    
    
    • 1
      @ 2025-7-10 15:51:44
      #include<bits/stdc++.h>
      using namespace std;
      double a[1111];
      int main()
      {
      	int n;
      	cin>>n;
      	double c=0;
      	double d=0;
      	double cc=99999;
      	double dd=0;
      	double m=0;
      	double g=0;
      	double k=0;
      	double s=0;
      	for(int i=1;i<=n;i++)
      	{
      		cin>>a[i];
      		if(a[i]>c)
      		{
      			k=c;
      			c=a[i];
      		}
      		else if(k<a[i])
      		{
      			k=a[i];
      		}
      		if(a[i]<cc)
      		{
      			dd=cc;
      			cc=a[i];
      		}
      		else if(a[i]<dd)
      		{
      			dd=a[i];
      		}
      		m+=a[i];
      		g=i;
      	}
      	//c是最大值,k是次大值,cc是最小值,dd是次小值 
      	m=m-cc-c;
      	g-=2;
      	m=m/g;
      	dd=max(m-dd,k-m);
      	cout<<fixed<<setprecision(2)<<m<<" "<<dd;
      	return 0;
      }
      
      • 0
        @ 2025-7-24 16:22:12

        • -1
          @ 2025-1-18 12:00:34
          #include <bits/stdc++.h>
          using namespace std;
          double a[305];
          int main()
          {
          	
          	double n,d,x,p=0,j;
          	cin>>n;
          	for(int i=1;i<=n;i++)
          	{
          		cin>>a[i];
          	}
          	d=a[1];
          	x=a[1]; 
          	for(int i=1;i<=n;i++)
          	{
          		if(d<a[i])d=a[i];
          		if(x>a[i])x=a[i];
          	} 
          	for(int i=1;i<=n;i++)
          	{
          		if(d==a[i])
          		{
          			a[i]=-1;
          			break;
          		}
          	}
          	for(int i=1;i<=n;i++)
          	{
          		if(x==a[i])
          		{
          			a[i]=-1;
          			break;
          		}
          	}
          	for(int i=1;i<=n;i++)
          	{
          		if(a[i]!=-1)p=p+a[i];
          	}
          	j=0;
          	for(int i=1;i<=n;i++)
          	{
          		if(j<abs(p/(n-2.0)-a[i]) && a[i]!=-1)
          		{
          			j=abs(p/(n-2.0)-a[i]);
          		}
          	}
          printf("%.2lf %.2lf",p/(n-2.0),j);	
           }
          • -1
            @ 2025-1-15 11:32:19
            #include <iostream>
            #include <vector>
            #include <algorithm>
            #include <cmath>
            #include <iomanip>
            using namespace std;
            
            int main() {
                int n;
                cin >> n;
                vector<double> samples(n);
                for (int i = 0; i < n; ++i) {
                    cin >> samples[i];
                }
                sort(samples.begin(), samples.end());  // 对样本进行排序
                double sum = 0.0;
                for (int i = 1; i < n - 1; ++i) {
                    sum += samples[i];
                }
                double average = sum / (n - 2);  // 平均白细胞数量
                double maxDiff = 0.0;
                for (int i = 1; i < n - 1; ++i) {
                    maxDiff = max(maxDiff, abs(samples[i] - average));
                }
                cout << fixed << setprecision(2) << average << " " << maxDiff << endl;
                return 0;
            }
            
            

            这个是对的,可以试一试,不对的话给差评,如果是对的,麻烦给个好评,谢谢!

            • @ 2025-7-21 10:53:29

              想的美

            • @ 2025-7-21 10:54:58

              undefined 大家快给差评!被给好评

            • @ 2025-7-24 16:19:12

              还是用AI来写的

          • -3
            @ 2024-11-16 9:40:36
            #include<bits/stdc++.h>
            using namespace std;
            const int N=310;
            double a[N];
            int main()
            {
            	int n;
            	cin>>n;
            	int maxid,minid;
            	double sum=0;
            	for (int i=1;i<=n;i++)
            	{
            		cin>>a[i];
            		if (i==1 || a[i]>a[maxid])
            		{
            			maxid=i;
            		}
            		if (i==1 || a[i]<a[minid])
            		{
            			minid=i;
            		}
            		sum+=a[i];
            	}
            	sum=sum-a[maxid]-a[minid];
            	double ave=sum/(n-2);
            	double res=0;
            	for (int i=1;i<=n;i++)//
            	{
            		if (i==maxid || i==minid) continue; 
            		double t=abs(a[i]-ave);
            		if (t>res)
            		{
            			res=t;
            		}
            	}
            	cout<<fixed<<setprecision(2)<<ave<<" "<<res; 
            	return 0;
            }
            
            • -6
              @ 2024-9-27 20:13:50

              nisnfneakjjgima

              • 1

              Information

              ID
              897
              Time
              1000ms
              Memory
              256MiB
              Difficulty
              3
              Tags
              (None)
              # Submissions
              258
              Accepted
              44
              Uploaded By