p1404平均数(代码片段)

hahaha2124652975 hahaha2124652975     2023-05-07     201

关键词:

首先二分答案求出一个可能的最大平均值,并用前缀和数组判断是否有连续至少m个数的平均数超过该可能平均值,之后按二分常规操作就行了

 1 #include<iostream>
 2 #include<cstdio>
 3 #include<cstring>
 4 #include<cmath>
 5 #include<algorithm>
 6 #include<queue>
 7 #include<stack>
 8 #include<deque>
 9 #define ll long long
10 using namespace std;
11 const int oo=0x3f3f3f3f;
12 const int N=100005;
13 
14 int n,m;
15 ll r,l,mid,M;
16 ll a[N],f[N];
17 
18 ll Max(ll a,ll b)return a>b?a:b;
19 ll Min(ll a,ll b)return a<b?a:b;
20 ll Abs(ll a)return a>0?a:-a;
21 
22 ll get()
23     ll zy=getchar();
24     ll z=1,y=0;
25     while(zy>9||zy<0)
26         if(zy==-) z=-1;
27         zy=getchar();
28     
29     while(zy>=0&&zy<=9)
30         y=(y<<1)+(y<<3)+zy-0;
31         zy=getchar();
32     
33     return z*y;
34 
35 
36 bool likezy()
37     bool ok=false;
38     ll p=M;
39     for(int i=1;i<=n;i++)
40         f[i]=f[i-1]+a[i]-mid;
41         if(i>=m)
42             p=Min(p,f[i-m]);
43             if(f[i]>=p) return true;
44         
45     
46     return false;
47 
48 
49 int main()
50     //freopen("P1404平均数.in","r",stdin);
51     //freopen("P1404平均数.out","w",stdout);
52     scanf("%d%d",&n,&m);
53     for(int i=1;i<=n;i++)
54         a[i]=get()*10000;
55         r=Max(a[i],r);
56         M=r;
57     
58     while(l<r)
59         mid=(l+r)>>1;
60         if(likezy()) l=mid+1;
61         else r=mid-1;
62     
63     printf("%lld
",l/10);
64     return 0;
65 

 

sql平均(代码片段)

查看详情

hdu1064(求平均数**)(代码片段)

题意是求12个浮点数的平均数,这题不用读题,看到运行时间为200ms再看下样例就能猜出题目的要求了,代码如下:1#include<bits/stdc++.h>2usingnamespacestd;3intmain()45doublea,ans(0);6for(inti=0;i<12;++i)78scanf("%lf",&a);9ans+=a;1011printf(" 查看详情

python平均编码(代码片段)

查看详情

javascript平均数组(代码片段)

查看详情

python平均编码(代码片段)

查看详情

python风向平均(代码片段)

查看详情

5.平均数(代码片段)

题目:输入3个整数,输出它们的平均值,保留3位小数。 思路:直接计算即可。 代码:#include<iostream>#include<iomanip>usingnamespacestd;intmain()inta=0,b=0,c=0;cin>>a>>b>>c;doubleaverage=static_cast<double>(a+b+c)/3;cout&l... 查看详情

python移动平均线(代码片段)

查看详情

javascript平均值(代码片段)

查看详情

sh$的平均值?(代码片段)

查看详情

python平均f分数(代码片段)

查看详情

神经网络优化-滑动平均(代码片段)

1滑动平均概述滑动平均(也称为影子值):记录了每一个参数一段时间内过往值的平均,增加了模型的泛化性。滑动平均通常针对所有参数进行优化:W和b,简单地理解,滑动平均像是给参数加了一个影子,参数变化,影子缓慢... 查看详情

求平均数的四种方法(代码片段)

用c语言求平均数有四种方法,各有利弊。1.第一种是最常规的做法例>intmain()inta=10;intb=5;c=(a+b)/2;system("pause");return0;这种方法有缺陷,如果a和b足够大,以致于两数之和超出了intmax(整型所能代表的最大值),所以不建议使用这... 查看详情

textabs值的平均值(代码片段)

查看详情

平均撒点方法java(代码片段)

平均撒点方法一、题目二、思路三、代码实现一、题目已知:i=1,func(1)=1/2;i=2,func(1) 查看详情

平均撒点方法java(代码片段)

平均撒点方法一、题目二、思路三、代码实现一、题目已知:i=1,func(1)=1/2;i=2,func(1) 查看详情

平均撒点方法java(代码片段)

平均撒点方法一、题目二、思路三、代码实现一、题目已知:i=1,func(1)=1/2;i=2,func(1) 查看详情

平均负载(代码片段)

什么是平均负载平均负载时指单位时间内,系统处于可运行状态和不可中断状态的平均进程数,也就是平均活跃进程数,它和CPU使用率没有直接关系。可运行状态的进程指正在使用CPU或者正在等待CPU的进程数。也就是说我们常用... 查看详情