比赛 |
20241126 |
评测结果 |
AAAAAAAAAA |
题目名称 |
小b爱实数 |
最终得分 |
100 |
用户昵称 |
小金 |
运行时间 |
0.613 s |
代码语言 |
C++ |
内存使用 |
15.96 MiB |
提交时间 |
2024-11-26 11:36:40 |
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
struct dian{
int x;
double y;
}d[1000010];
double f,s[1000010],ans=1e9;
char str[1000010];
int n,bj;
bool cmp(dian a,dian b)
{
return a.y<b.y;
}
int main()
{
freopen("changgao_real.in","r",stdin);
freopen("changgao_real.out","w",stdout);
scanf("%lf",&f);
scanf("%s",str+1);
n=strlen(str+1);
for(int i=1;i<=n;i++)
{
s[i]=str[i]-'0'+s[i-1];
}
for(int i=1;i<=n;i++)
{
d[i].y=s[i]-(double)i*f;
d[i].x=i;
}
sort(d,d+n+1,cmp);
bj=n;
for(int i=1;i<=n;i++)
{
double now=fabs((d[i].y-d[i-1].y)/(d[i].x-d[i-1].x));
if(min(d[i].x,d[i-1].x)<bj)
{
if(now-1e-6<ans)
{
ans=now;
bj=min(d[i].x,d[i-1].x);
}
}
else if(now+1e-6<ans)
{
ans=now;
bj=min(d[i].x,d[i-1].x);
}
}
printf("%d",bj);
return 0;
}