題目鏈結
不知為何狀態突然奇差無比,按說這題本來應該是水題的,但不僅不會做,還比著題解爆零五次
二分平均值(想到了),單調佇列維護最大區間和(想到了但是不會,???為什麼我不會???)
#include#include#include
#include
#include
#define maxn 200020
#define eps 1e-6
using
namespace
std;
inline
long
long
read()
while
(isdigit(ch))
return num*f;
}int
q[maxn];
double
sum[maxn];
ints[maxn],h,t;
intn,lim,lia;
inline
double calc(int x,int
y)bool check(double
limit)
while(h<=t&&s[h];
if(h<=t&&sum[i]-sum[s[h]]>=0) return1;
}return0;
}int
main()
else r=mid;
}printf(
"%.3lf
",ans);
return0;
}
Luogu P1419 尋找段落
我又復活啦!這裡給定乙個長度為 n 的序列 a 定義 a i 為第 i 個元素的價值。現在需要找出序列中最有價值的 段落 段落的定義是長度在 s,t 之間的連續序列。最有價值段落是指平均值最大的段落。段落的平均值等於段落總價值除以段落長度。第一行乙個整數 n 表示序列長度。第二行兩個整數 t 和 t...
洛谷1419 尋找段落(單調佇列)
洛谷1419 尋找段落 題目描述 給定乙個長度為n的序列a i,定義a i 為第i個元素的價值。現在需要找出序列中最有價值的 段落 段落的定義是長度在 s,t 之間的連續序列。最有價值段落是指平均值最大的段落,段落的平均值 段落總價值 段落長度。輸入輸出格式 輸入格式 第一行乙個整數n,表示序列長度...
P1419 尋找段落 單調佇列 二分
題意 給出n個數,讓我們求出乙個最大的平均值 求平均值的區間只能在 s,t 這樣的乙個範圍內選取 假如 3 4 則表明可以選擇乙個區間大小為3或者4的,而不能選擇其他大小 思路 首先二分答案,即 二分最大平均值。我們將a全部減去mid,問題轉化為判斷是否存在乙個長度在s t範圍內的區間它的和為正,如...