QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#752716 | #5983. Pretty Good Proportion | qyzy | 0 | 2539ms | 18356kb | C++14 | 1.2kb | 2024-11-16 09:26:03 | 2024-11-16 09:26:05 |
Judging History
answer
/*Life is too long to end at a grave*/
#include<bits/stdc++.h>
#define N 1000010
#define I_love_Furina return
#define forever 0
#define foreverr 1
#define endl '\n'
#define FIO(s) do{freopen(s".in","r",stdin);freopen(s".out","w",stdout);}while(false)
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0)
#define db double
#define ull unsigned long long
#define chc cout<<114514<<endl
#define PDI pair<db,int>
#define fi first
#define se second
#define mk make_pair
#define eps 1e-12
#define int long long
using namespace std;
int n,T,m;
db f,sum[N];
PDI a[N];
string s;
signed main(){
IOS;//FIO("");
cin>>T;
while(T--){
m++;
cin>>n>>f>>s;
int ans=1e12;
db minn=1e9;
for(int i=1;i<=n;i++){
if(s[i-1]=='1')sum[i]=sum[i-1]+1.0;
else sum[i]=sum[i-1];
a[i].fi=sum[i]-i*f;
a[i].se=i;
}
sort(a+1,a+n+1);
for(int i=1;i<n;i++){
for(int j=i+1;j<=min(i+100,n);j++){
int x=a[i].se,y=a[j].se;
if(x>y)swap(x,y);
if(fabs(1.0*(sum[y]-sum[x-1])/(y-x+1)-f)<minn)minn=fabs(1.0*(sum[y]-sum[x-1])/(y-x+1)-f),ans=x;
else if(fabs(fabs(1.0*(sum[y]-sum[x-1])/(y-x+1)-f)-minn)<eps)ans=min(ans,x);
}
}
cout<<"Case #"<<m<<": ";
cout<<ans-1<<endl;
}
I_love_Furina forever;
}
Details
Tip: Click on the bar to expand more detailed information
Subtask #1:
score: 0
Wrong Answer
Test #1:
score: 0
Wrong Answer
time: 9ms
memory: 3876kb
input:
100 10 0.827672 0010101011 4 0.932623 0100 1000 0.834002 011001110010111110000110101100010010100101101110110111100010101101111100110001011000110100010100011011000001100001010110111101111010110110000110011000111000011110101100100111111001111011011100111001011101010100111011100011110011100011110010001...
output:
Case #1: 6 Case #2: 0 Case #3: 10 Case #4: 0 Case #5: 0 Case #6: 1 Case #7: 0 Case #8: 0 Case #9: 0 Case #10: 0 Case #11: 0 Case #12: 3 Case #13: 5 Case #14: 564 Case #15: 0 Case #16: 0 Case #17: 0 Case #18: 0 Case #19: 0 Case #20: 0 Case #21: 0 Case #22: 0 Case #23: 0 Case #24: 844 Case #25: 999999...
result:
wrong answer 2nd lines differ - expected: 'Case #2: 1', found: 'Case #2: 0'
Subtask #2:
score: 0
Wrong Answer
Test #2:
score: 0
Wrong Answer
time: 2539ms
memory: 18356kb
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: 6 Case #2: 0 Case #3: 0 Case #4: 1 Case #5: 0 Case #6: 0 Case #7: 0 Case #8: 0 Case #9: 0 Case #10: 0 Case #11: 999999999999 Case #12: 999999999999 Case #13: 0 Case #14: 0 Case #15: 0 Case #16: 18160 Case #17: 0 Case #18: 999999999999 Case #19: 123 Case #20: 0 Case #21: 0 Case #22: 0 Case #...
result:
wrong answer 4th lines differ - expected: 'Case #4: 2', found: 'Case #4: 1'