zoukankan      html  css  js  c++  java
  • 寻找段落 Learner

    寻找段落

    题目描述

    给定一个长度为n的序列a_i,定义a[i]为第i个元素的价值。现在需要找出序列中最有价值的“段落”。段落的定义是长度在[S,T]之间的连续序列。最有价值段落是指平均值最大的段落,

    段落的平均值=段落总价值/段落长度。

    输入格式

    第一行一个整数n,表示序列长度。

    第二行两个整数S和T,表示段落长度的范围,在[S,T]之间。

    第三行到第n+2行,每行一个整数表示每个元素的价值指数。

    n\ (1\le n \le

    输出格式

    一个实数,保留 3 位小数,表示最优段落的平均值。

    输出时每行末尾的多余空格,不影响答案正确性

    样例输入

    4
    3 4
    5 3 -3 9

    样例输出

    3.500

    代码:

     #include<iostream>
     #include<iomanip>
     using namespace std;
     
     double findValue3(int *arr,int n,int len){
         double maxdemo=-0xffffff,sum;
         for (int i = 1; i <= n-len+1; i++)
         {
             sum=0;
             for (int j = i; j < i+len; j++)
             {
                 sum+=arr[j];
             }
             if (sum>maxdemo)
             {
                 maxdemo=sum;
             }
         }
         return maxdemo/len;    
     }
     int main(){
         int n;
         cin>>n;
         int S,T;
         cin>>S>>T;
         int *arr = new int[n+1];
         for (int i = 1; i <= n; i++)
         {
             cin>>arr[i];
         }
         double sum=0,max=-0xffffff;
         for (int i = S; i <= T; i++)
         {
             double value=findValue3(arr,n,i);
             if(value>max){
                 max=value;
             }
         }
         cout<<setiosflags(ios::fixed)<<setprecision(3)<<max<<endl;
     
     }

     

     

    因上求缘,果上努力~~~~ 作者:Learner-,转载请注明原文链接:https://www.cnblogs.com/BlairGrowing/p/12649987.html

  • 相关阅读:
    接口的基本语法
    包和访问权限(三)
    包和访问权限(二)
    包和访问权限(一)
    为什么用抽象类
    html5,单击显示详细信息
    html5,格式的验证
    html5,加密元素
    html5,新增的元素,fieldset legend
    html5,进度条
  • 原文地址:https://www.cnblogs.com/BlairGrowing/p/12649987.html
Copyright © 2011-2022 走看看