QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#735045#4239. MSTWuyanruWA 23ms5924kbC++141.3kb2024-11-11 16:50:012024-11-11 16:50:01

Judging History

This is the latest submission verdict.

  • [2024-11-11 16:50:01]
  • Judged
  • Verdict: WA
  • Time: 23ms
  • Memory: 5924kb
  • [2024-11-11 16:50:01]
  • Submitted

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 ma[300005];
int mi[300005];
int a[300005];
int n;
inline void solve()
{
    n=read();
    for(int i=1;i<=n;i++) a[i]=read();

    mi[1]=ma[1]=1;
    for(int i=2;i<=n;i++)
    {
        mi[i]=a[i]<a[mi[i-1]]?i:mi[i-1];
        ma[i]=a[i]>a[ma[i-1]]?i:ma[i-1];
    }

    ll ans=0;int r=n;
    while(r>1)
    {
        int p=ma[r-1];
        if(a[r]>=a[p]) ans+=a[r]-a[p],r--;
        else
        {
            for(int i=p+1;i<=r;i++) ans+=a[i]-a[p];
            for(int i=p+1;i<=r;i++) a[p]=min(a[p],a[i]);
            r=p;
        }
    }
    printf("%lld\n",ans);
}
int main()
{
    int T=read();
    while(T--) solve();
    return 0;
}

詳細信息

Test #1:

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

input:

2
5
1 2 3 4 5
3
10 45 10

output:

4
-35

result:

ok 2 number(s): "4 -35"

Test #2:

score: 0
Accepted
time: 23ms
memory: 5816kb

input:

300000
1
-167586
1
45048
1
-218274
1
-39107
1
-15880
1
33014
1
217559
1
-208936
1
-260570
1
-83353
1
-39868
1
-253159
1
-26640
1
-114610
1
-244464
1
-7217
1
-196817
1
168691
1
146930
1
284612
1
-93130
1
-186071
1
-31746
1
37800
1
-255791
1
-237603
1
81359
1
201796
1
106965
1
-8371
1
-85871
1
-270622...

output:

0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
...

result:

ok 300000 numbers

Test #3:

score: 0
Accepted
time: 18ms
memory: 5832kb

input:

150000
2
-13258 -22375
2
-54993 -139278
2
-190454 190904
2
-167856 -255749
2
-4278 -217960
2
-267607 -152069
2
232717 199468
2
-154968 -171972
2
-166963 -274452
2
78459 -235523
2
-243695 163707
2
37498 -80301
2
196137 -251909
2
-77332 -82651
2
236076 250081
2
-139194 8035
2
256129 185906
2
72175 -17...

output:

-9117
-84285
381358
-87893
-213682
115538
-33249
-17004
-107489
-313982
407402
-117799
-448046
-5319
14005
147229
-70223
-242776
531933
251314
-377509
-258596
-210071
480133
-27044
110616
213370
6298
-370703
-118888
-103653
-346212
54848
-39115
-22654
-90525
-90204
345598
-96264
854
-433346
-187189
...

result:

ok 150000 numbers

Test #4:

score: -100
Wrong Answer
time: 16ms
memory: 5924kb

input:

100000
3
99677 -229948 68140
3
-54211 -95409 260502
3
151289 -78245 141319
3
44080 -120949 108082
3
-146874 -144493 251966
3
198672 5102 103967
3
165781 237071 101294
3
-236562 72879 -77125
3
233711 286742 253192
3
15202 98416 187853
3
-12416 -267937 -283250
3
-137083 -73845 139482
3
260645 202901 -...

output:

-361162
273515
-239504
-101027
398840
-288275
-200264
9433
-14069
172651
-526355
276565
-355832
76522
348200
-788400
-362322
-1000601
-30025
-892127
-281085
-99512
-13346
-78679
-306280
-427373
-490044
-506530
-193674
321809
-11225
-436944
-718672
-538331
-279352
-595584
-709202
-390572
84683
-30428...

result:

wrong answer 13th numbers differ - expected: '-538432', found: '-355832'