求平均數最大,長度不小於 L

2021-10-10 02:21:42 字數 918 閱讀 5240

給定乙個長度為 的非負整數序列 ,求乙個平均數最大的,長度不小於 的子段。

輸入格式

第一行用空格分隔的兩個整數 和 ;

第二行為 個用空格隔開的非負整數,表示 。

輸出格式

輸出乙個整數,表示這個平均數的 倍。不用四捨五入,直接輸出。

樣例樣例輸入

10 6

6 4 2 10 3 8 5 9 4 1

樣例輸出

6500

思路

直接用二分去找最大平均數

**

#include

#include

#include

#include

using

namespace std;

double a[

101234

],pre[

101234

],b[

101234];

intmain()

double maxx=

-1e10

,minn=

1e10

;for

(i=l;i<=n;i++)if

(maxx>=0)

//maxx>0代表假設的mid可以得到

l=mid;

//尋找比mid更大的

else

r=mid;

//找比mid更小的

}printf

("%d\n"

,int

(r*1000))

;//轉換成int型,

//printf("%.0lf\n",r*1000);//有個樣例過不去,精度高,比樣例大1

return0;

}

案例 求平均數

需求 編寫乙個方法,實現任意數求平均數 去除數字收納櫃的最大和最小,然後在算平均數,保留小數點後兩位 普通版本 letfn function 給ary排序,去除首未,ary.sort function a,b ary.pop ayr.shift 然後求和,最後求平均 let total 0 for ...

最大子段的平均數

示例 1 輸入 1,12,5,6,50,3 輸出 最大的和是54.0 子段的開始位置 1 子段的結束位置 5 最大子段平均數為 10.8 解釋 最大平均數 12 5 6 50 3 5 1 1 10.8 片.public class main int k 子段的個數 k lastindex first...

子陣列最大平均數

給定 n 個整數,找出平均數最大且長度為 k 的連續子陣列,並輸出該最大平均數。示例 1 輸入 1,12,5,6,50,3 k 4 輸出 12.75 簡單的滑動視窗題目 直接暴力求解會導致時間複雜度過高,大量資料輸入超出最大執行時間 使用滑動視窗優化減少迴圈巢狀 1.初始前k個數的值sum 2.從第...