QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#544963#5420. InscryptionWuyanruWA 61ms8284kbC++141.6kb2024-09-02 21:15:082024-09-02 21:15:08

Judging History

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

  • [2024-09-02 21:15:08]
  • 评测
  • 测评结果:WA
  • 用时:61ms
  • 内存:8284kb
  • [2024-09-02 21:15:08]
  • 提交

answer

#include<bits/stdc++.h>
#define inf 0x3f3f3f3f3f3f3f3fll
#define debug(x) cerr<<#x<<"="<<x<<endl
using namespace std;
using ll=long long;
using ld=long double;
using pli=pair<ll,int>;
using pi=pair<int,int>;
template<typename A>
using vc=vector<A>;
inline int read()
{
    int s=0,w=1;char ch;
    while((ch=getchar())>'9'||ch<'0') if(ch=='-') w=-1;
    while(ch>='0'&&ch<='9') s=s*10+ch-'0',ch=getchar();
    return s*w;
}
inline ll lread()
{
    ll s=0,w=1;char ch;
    while((ch=getchar())>'9'||ch<'0') if(ch=='-') w=-1;
    while(ch>='0'&&ch<='9') s=s*10+ch-'0',ch=getchar();
    return s*w;
}
int sum[1000002];
int mi[1000002];
int a[1000001];
int n;
int main()
{
    int T=read();
    while(T--)
    {
        n=read(),mi[n+1]=sum[n+1]=0;
        for(int i=1;i<=n;i++) a[i]=read();
        for(int i=n;i;i--)
        {
            int v=a[i]?a[i]:-1;
            mi[i]=v+min(0,mi[i+1]);
            sum[i]=sum[i+1]+(a[i]==1);
        }

        int A=0,B=1,nc=1,ns=1;
        for(int i=1;i<=n;i++)
        {
            if(a[i]>=0) ns++,nc++;
            else
            {
                nc--;
                if(!nc) break;
            }
            if(nc+mi[i+1]<=0) continue;
            int a=ns+sum[i+1],b=nc+sum[i+1]-(n-i-sum[i+1]);
            // printf("i=%d : %d %d  %d %d  %d %d\n",i,nc,ns,sum[i+1],mi[i+1],a,b);
            if(a*B>A*a) A=a,B=b; 
        }
        if(!A) printf("-1\n");
        else
        {
            int g=__gcd(A,B);
            printf("%d %d\n",A/g,B/g);
        }
    }
    return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 1ms
memory: 7828kb

input:

6
7
1 1 1 -1 1 1 -1
4
1 0 -1 0
4
0 -1 -1 0
1
0
2
0 0
1
-1

output:

3 2
3 1
-1
1 1
2 1
-1

result:

ok 6 lines

Test #2:

score: 0
Accepted
time: 61ms
memory: 7840kb

input:

1000000
1
1
1
-1
1
1
1
1
1
1
1
1
1
-1
1
-1
1
0
1
0
1
1
1
0
1
-1
1
0
1
1
1
0
1
1
1
0
1
1
1
0
1
0
1
0
1
1
1
-1
1
1
1
1
1
-1
1
0
1
1
1
0
1
-1
1
0
1
-1
1
1
1
-1
1
0
1
1
1
1
1
-1
1
0
1
-1
1
-1
1
-1
1
-1
1
0
1
0
1
-1
1
0
1
-1
1
0
1
0
1
0
1
0
1
0
1
-1
1
1
1
0
1
0
1
1
1
0
1
-1
1
1
1
1
1
0
1
1
1
1
1
1
1
0
1
...

output:

1 1
-1
1 1
1 1
1 1
1 1
-1
-1
1 1
1 1
1 1
1 1
-1
1 1
1 1
1 1
1 1
1 1
1 1
1 1
1 1
1 1
1 1
-1
1 1
1 1
-1
1 1
1 1
1 1
-1
1 1
-1
1 1
-1
1 1
1 1
1 1
-1
1 1
-1
-1
-1
-1
1 1
1 1
-1
1 1
-1
1 1
1 1
1 1
1 1
1 1
-1
1 1
1 1
1 1
1 1
1 1
-1
1 1
1 1
1 1
1 1
1 1
1 1
1 1
-1
-1
1 1
1 1
-1
1 1
1 1
1 1
1 1
-1
1 1
1 1
1 ...

result:

ok 1000000 lines

Test #3:

score: 0
Accepted
time: 28ms
memory: 7892kb

input:

181249
6
1 0 -1 0 1 0
4
1 -1 -1 -1
8
-1 0 0 0 1 -1 1 1
3
0 1 0
6
1 0 -1 1 -1 0
4
1 -1 -1 -1
9
0 1 0 -1 -1 0 -1 0 1
1
-1
3
0 -1 1
5
0 0 1 -1 1
3
1 -1 0
6
-1 0 0 -1 0 1
8
1 -1 -1 -1 0 1 -1 0
2
0 0
3
-1 1 0
3
0 -1 -1
10
0 1 0 -1 1 1 0 -1 1 0
3
1 0 0
9
1 -1 1 -1 0 -1 0 0 0
3
0 1 0
3
-1 0 0
7
-1 0 -1 -1 ...

output:

4 1
-1
-1
3 2
4 1
-1
3 1
-1
3 2
2 1
3 2
-1
-1
2 1
-1
-1
6 1
3 2
3 1
3 2
-1
-1
-1
-1
2 1
5 3
-1
5 4
2 1
-1
3 2
5 1
1 1
-1
3 2
-1
1 1
-1
2 1
1 1
-1
1 1
-1
1 1
3 2
-1
-1
-1
-1
3 2
5 2
1 1
-1
3 1
-1
-1
1 1
-1
6 1
3 2
-1
3 2
4 3
2 1
-1
5 3
3 1
6 1
-1
2 1
5 4
-1
1 1
-1
3 1
-1
-1
5 3
1 1
2 1
5 2
-1
3 1
4 3...

result:

ok 181249 lines

Test #4:

score: 0
Accepted
time: 10ms
memory: 7892kb

input:

19793
93
1 -1 1 1 -1 -1 1 0 0 0 0 1 1 -1 -1 -1 0 -1 -1 1 -1 0 0 0 0 1 0 -1 -1 1 -1 1 -1 1 -1 1 1 -1 1 0 1 0 -1 -1 0 1 1 0 -1 -1 0 1 1 0 -1 1 -1 -1 -1 0 0 0 1 -1 0 1 -1 0 0 0 1 0 -1 1 -1 -1 1 -1 0 1 -1 0 -1 -1 1 0 0 0 0 0 0 -1 -1
36
0 1 1 -1 1 -1 0 1 1 1 0 -1 1 1 -1 0 1 1 1 1 0 1 -1 -1 1 -1 1 0 -1 0 ...

output:

24 1
19 1
12 1
47 4
12 1
22 1
23 3
14 1
11 2
46 1
-1
-1
-1
26 3
-1
-1
13 1
2 1
-1
33 4
41 2
-1
43 2
-1
-1
-1
-1
25 1
7 1
-1
-1
-1
-1
-1
11 2
2 1
-1
27 4
-1
31 1
14 1
20 1
-1
5 3
38 1
24 1
-1
2 1
23 2
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
18 1
50 1
37 1
19 2
-1
21 1
-1
-1
14 1
15 2
30 1
-1
13 3
-1
-...

result:

ok 19793 lines

Test #5:

score: 0
Accepted
time: 15ms
memory: 7908kb

input:

1987
350
-1 1 0 0 0 -1 0 1 -1 1 0 0 -1 1 1 -1 1 1 -1 -1 -1 -1 0 1 1 0 1 0 0 0 -1 0 1 -1 1 0 1 -1 -1 1 0 1 1 1 -1 0 0 0 1 0 1 0 0 1 -1 1 0 1 0 1 -1 1 0 1 -1 -1 0 -1 1 0 -1 1 1 1 -1 -1 -1 0 0 0 0 -1 -1 -1 -1 -1 0 1 1 -1 -1 1 0 1 -1 0 0 -1 -1 1 0 0 -1 0 -1 1 1 0 -1 1 -1 0 -1 1 -1 1 1 -1 0 0 1 -1 1 0 1 ...

output:

-1
-1
182 3
57 2
205 2
262 3
428 3
25 1
333 2
-1
469 1
440 3
176 3
-1
-1
-1
175 2
-1
44 1
-1
-1
-1
-1
-1
-1
135 1
-1
-1
-1
-1
-1
-1
-1
470 3
158 5
215 1
-1
-1
-1
-1
55 1
-1
-1
-1
241 1
175 11
-1
393 1
224 5
45 1
165 1
209 1
-1
488 1
15 1
-1
-1
-1
-1
-1
312 5
-1
-1
-1
-1
78 1
211 2
-1
-1
172 1
458 1
...

result:

ok 1987 lines

Test #6:

score: 0
Accepted
time: 7ms
memory: 8016kb

input:

188
5255
1 0 -1 -1 1 0 0 0 -1 0 -1 1 0 -1 1 0 -1 0 -1 0 0 0 0 -1 -1 0 0 1 -1 1 0 -1 0 -1 -1 1 0 1 -1 1 -1 1 0 1 1 1 -1 1 1 1 -1 0 -1 -1 0 0 1 1 0 0 -1 -1 0 1 0 0 1 0 -1 -1 1 -1 -1 1 0 -1 1 0 0 -1 1 -1 -1 -1 1 1 -1 0 1 1 -1 -1 1 0 -1 -1 -1 0 1 1 1 -1 0 1 -1 1 -1 0 1 0 -1 1 0 0 1 0 0 -1 1 1 -1 1 1 -1 ...

output:

2629 2
-1
-1
2154 1
1205 2
2907 1
-1
3373 2
4531 4
-1
3399 2
-1
-1
-1
-1
470 3
-1
1737 1
-1
-1
1475 2
4915 3
705 7
-1
2269 2
4587 2
-1
2021 1
-1
2990 7
-1
-1
-1
-1
848 1
1533 1
-1
-1
595 1
-1
-1
-1
1553 4
-1
225 4
-1
-1
-1
1697 3
494 1
-1
2433 1
-1
-1
-1
-1
-1
-1
931 3
-1
3211 1
1119 1
1382 1
1591 1...

result:

ok 188 lines

Test #7:

score: -100
Wrong Answer
time: 11ms
memory: 8284kb

input:

19
48437
-1 1 1 -1 0 0 -1 1 -1 1 -1 -1 -1 -1 -1 0 1 0 1 -1 -1 1 -1 -1 1 1 1 0 1 -1 0 0 -1 -1 0 0 1 0 0 1 1 1 1 0 -1 0 -1 1 1 -1 -1 0 1 1 0 0 0 1 0 -1 0 -1 1 0 0 0 -1 1 1 -1 0 0 0 0 -1 0 -1 0 -1 0 1 0 -1 1 0 1 -1 1 0 1 1 0 0 1 -1 -1 0 1 -1 0 1 1 -1 1 -1 0 -1 -1 1 0 -1 1 0 1 0 0 1 1 0 1 1 -1 0 -1 0 1 ...

output:

-1
-1
-1
3841 5
11848 1
24812 1
-1
62749 31510
17939 9067
-1
18922 5
-1
-1
-1
10079 4
-1
-1
2267 3
64185 31931

result:

wrong answer 8th lines differ - expected: '46995 2', found: '62749 31510'