首页 > 代码库 > 求两个时间点的最短距离

求两个时间点的最短距离

  1. #include "iostream"
  2. #include "cmath"
  3. using namespace std;
  4. int sort(int a[],int n)
  5. {
  6. int temp,all=0;
  7. for(int i=0;i<n;i++)
  8. {
  9. for(int j=i+1;j<n;j++)
  10. if(a[i]>a[j])
  11. {temp=a[i];a[i]=a[j];a[j]=temp;}
  12. }
  13. for(int i=0;i<n;i++)
  14. all+=a[i];
  15. return all/n;
  16. }
  17. int main()
  18. {
  19. int M;
  20. cin>>M;
  21. while(M--)
  22. {
  23. int a[100000];
  24. int N;
  25. cin>>N;
  26. for(int i=0;i<N;i++)
  27. cin>>a[i];
  28. int aver,midn=0;
  29. _int64 middle=999999999999999;
  30. aver=sort(a,N);
  31. for(int i=0;i<N;i++)
  32. if(fabs((float)(aver-a[i]))<middle)
  33. {midn=i;middle=fabs((float)(aver-a[i]));}
  34. int all=0;
  35. for(int j=0;j<N;j++)
  36. all+=fabs((float)(a[j]-a[midn]));
  37. cout<<all<<endl;
  38. }
  39. return 0;
  40. }



来自为知笔记(Wiz)


附件列表

     

    求两个时间点的最短距离