记录编号 597321 评测结果 AAAAAAAAAA
题目名称 小b爱实数 最终得分 100
用户昵称 Gravatarflyfree 是否通过 通过
代码语言 C++ 运行时间 0.492 s
提交时间 2024-11-26 17:18:59 内存使用 15.77 MiB
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define db double
#define MAXN 1000010
#define eps 1e-9
inline ll read(){
	ll x=0,f=1;
	char c=getchar();
	while(c<'0'||c>'9'){
		if(c=='-')f=-1;
		c=getchar();
	}
	while(c>='0'&&c<='9'){
		x=x*10+c-'0';
		c=getchar();
	}
	return x*f;
}
db sum[MAXN],f,ans=1e9;
pair <db,db> p[MAXN];
string s;
ll pos;
int main(){
	freopen("changgao_real.in","r",stdin);
	freopen("changgao_real.out","w",stdout);
	cin>>f;
	cin>>s;
	for(int i=0;i<s.length();i++){
		sum[i+1]=sum[i]+s[i]-'0';
//		cout<<sum[i+1]<<" ";
		p[i+1]=make_pair(f*(db)(i+1)-(db)sum[i+1],(db)i+1);
	}
//	cout<<endl;
	sort(p+1,p+1+s.length());
//	cout<<p[1].first<<" "<<p[1].second<<endl;
	for(int i=2;i<=s.length();i++){
		if(ans-fabs(fabs(p[i].first-p[i-1].first)/fabs(p[i].second-p[i-1].second))>eps){
			ans=fabs(fabs(p[i].first-p[i-1].first)/fabs(p[i].second-p[i-1].second));
			pos=(ll)min(p[i].second,p[i-1].second);
		}else if(fabs(ans-fabs(fabs(p[i].first-p[i-1].first)/fabs(p[i].second-p[i-1].second)))<=eps){
			pos=min(pos,(ll)min(p[i].second,p[i-1].second));
		}
//			cout<<p[i].first<<" "<<p[i].second<<" "<<fabs(fabs(p[i].first-p[i-1].first)/fabs(p[i].second-p[i-1].second))<<endl;
	}
	cout<<pos;
	return 0;
}