QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#735045 | #4239. MST | Wuyanru | WA | 23ms | 5924kb | C++14 | 1.3kb | 2024-11-11 16:50:01 | 2024-11-11 16:50:01 |
Judging History
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'