Lời giải đề thi tuyển sinh cao học ngành KHMT, năm 2011
Chia sẻ đến

Mã số tài liệu: 6572
Đơn giá: 0
NHẤN VÀO ĐỂ TẢI
Đề bài:
Tính :
            Aver=i=0n1(aiMax)2+i=0n1(aiMin)2+n2(MaxMin)2
Trong đó Max, Min lần lượt là giá trị  lớn nhất, nhỏ nhất của n số  thực (được nhập vào từ
thiết bị nhập chuẩn).



Lời giải:
Dựa vào công thức ban đầu, ta khải triển và đươc:
             Aver =2i=0n1a2i2(Max+Min)i=0n1ai+n(Max2+Min2)+n2(MaxMin)2
Dựa vào biểu thức tương đương trên ta dễ dàng tính chỉ với 1 vòng for mà không cần dùng mảng.
Solution tham khảo:
#include<iostream>
using namespace std;
int main()
{
 int n,max,min,s=0;
 cin>>n;
 for(int i=0;i<n;i++) {
  cin>>a;
  min=(min>a)?a:min;
  max=(max<a)?a:max;
  s+=(min*min+max*max)*n+;
  s+a*a*2*(max-min)*(max-min);
 }
 cout<<s;
}