QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#735343#5983. Pretty Good ProportionAzusa0 530ms14160kbC++14946b2024-11-11 19:22:132024-11-11 19:22:13

Judging History

你现在查看的是最新测评结果

  • [2024-11-11 19:22:13]
  • 评测
  • 测评结果:0
  • 用时:530ms
  • 内存:14160kb
  • [2024-11-11 19:22:13]
  • 提交

answer

#include<bits/stdc++.h>
#define rep(i,a,n) for(int i=(a);i<=(n);++i)
#define per(i,a,n) for(int i=(n);i>=(a);--i)
#define SZ(x) ((int)(x).size())
#define eps 1e-8

using namespace std;
typedef long double db;
typedef long long ll;
typedef pair<int,int> pii;

const int maxn=5e5+10;

int n,id[maxn];
db p,a[maxn];
char s[maxn];

inline void solve(){
	scanf("%d%Lf%s",&n,&p,s+1);	
	rep(i,1,n){
		id[i]=i;
		a[i]=a[i-1]+(s[i]=='1')-p;
	}
	id[0]=0;
	sort(id,id+1+n,[&](const int &x,const int &y){
		return a[x]<a[y];
	});
	db res=10000000000000000;
	rep(i,1,n){
		res=min(res,fabsl((a[id[i]]-a[id[i-1]])/(id[i]-id[i-1])));
	}
	int lef=n+1;
	rep(i,1,n){
		if(fabsl(fabsl((a[id[i]]-a[id[i-1]])/(id[i]-id[i-1]))-res)<eps){
			lef=min(lef,min(id[i],id[i-1])+1);
		}
	}
	printf("%d\n",lef);
}

signed main(){
    int _=1;
    scanf("%d",&_); 
   	rep(t,1,_){
   		printf("Case #%d: ",t);
   		solve();
	}
}

Details

Tip: Click on the bar to expand more detailed information

Subtask #1:

score: 0
Wrong Answer

Test #1:

score: 0
Wrong Answer
time: 2ms
memory: 6036kb

input:

100
10 0.827672
0010101011
4 0.932623
0100
1000 0.834002
011001110010111110000110101100010010100101101110110111100010101101111100110001011000110100010100011011000001100001010110111101111010110110000110011000111000011110101100100111111001111011011100111001011101010100111011100011110011100011110010001...

output:

Case #1: 7
Case #2: 2
Case #3: 11
Case #4: 1
Case #5: 1
Case #6: 2
Case #7: 1
Case #8: 1
Case #9: 1
Case #10: 1
Case #11: 1
Case #12: 5
Case #13: 6
Case #14: 565
Case #15: 1
Case #16: 1
Case #17: 1
Case #18: 1
Case #19: 1
Case #20: 1
Case #21: 1
Case #22: 1
Case #23: 1
Case #24: 845
Case #25: 1
Case...

result:

wrong answer 1st lines differ - expected: 'Case #1: 6', found: 'Case #1: 7'

Subtask #2:

score: 0
Wrong Answer

Test #2:

score: 0
Wrong Answer
time: 530ms
memory: 14160kb

input:

100
15 0.333333
000000000011000
10 0.418754
0101100001
2 0.499999
01
3 0.977951
001
2 0.249999
01
10 0.670229
0111011001
1000 0.500001
001101111110110010110000010010110001110010001101110111010011000010100011011101010110011011011010111110011100011000001000101011100011010100101101111110100101011010111...

output:

Case #1: 7
Case #2: 1
Case #3: 1
Case #4: 3
Case #5: 1
Case #6: 1
Case #7: 1
Case #8: 1
Case #9: 1
Case #10: 1
Case #11: 1
Case #12: 1
Case #13: 1
Case #14: 1
Case #15: 1
Case #16: 4334
Case #17: 1
Case #18: 1
Case #19: 124
Case #20: 1
Case #21: 1
Case #22: 1
Case #23: 1
Case #24: 1
Case #25: 1
Case...

result:

wrong answer 1st lines differ - expected: 'Case #1: 6', found: 'Case #1: 7'