比赛 20241126 评测结果 ATTTTTTTTT
题目名称 小b爱实数 最终得分 10
用户昵称 黄天宇 运行时间 17.947 s
代码语言 C++ 内存使用 11.84 MiB
提交时间 2024-11-26 10:07:27
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
const int MAXN=1e6+5;
string str;
int n;
double f;
double a[MAXN],s[MAXN];
double minx=1e9;
int p;
int main(){
	freopen("changgao_real.in","r",stdin);
	freopen("changgao_real.out","w",stdout);
	cin>>f;
	cin>>str;
	for(int i=0;i<str.length();i++){
		if(str[i]=='1') a[i]=1;
	}
	s[0]=a[0];
	for(int i=1;i<str.length();i++){
		s[i]=s[i-1]+a[i];
	}
	for(int i=0;i<str.length();i++){
		for(int j=i;j<str.length();j++){
			if(i==j){
				if(minx>abs(a[i]-f)){
					minx=abs(a[i]-f);
					p=i;
				}
				continue;
			}
			if(minx>abs(f-(abs(s[j]-s[i-1])/double(j-i+1)))){
				minx=abs(f-(abs(s[j]-s[i-1])/double(j-i+1)));
				p=i;
			}
		}
	}
	cout<<p<<endl;
	return 0;
}