QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#558458 | #5435. Clamped Sequence | Wuyanru | WA | 26ms | 4000kb | C++14 | 1.6kb | 2024-09-11 16:14:53 | 2024-09-11 16:14:54 |
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 pre[5005];
int num[5005];
int a[5005];
int n,k,len;
int main()
{
n=read(),k=read();
for(int i=1;i<=n;i++) num[i]=a[i]=read();
sort(num+1,num+n+1),len=unique(num+1,num+n+1)-num-1;
for(int i=1;i<=n;i++) a[i]=lower_bound(num+1,num+n+1,a[i])-num;
for(int i=2;i<=n;i++) pre[min(a[i-1],a[i])]++,pre[max(a[i-1],a[i])]--;
for(int i=1;i<=len;i++) pre[i]+=pre[i-1];
// for(int i=1;i<=len;i++) printf("%d%c",num[i]," \n"[i==len]);
// for(int i=1;i<=len;i++) printf("%d%c",pre[i]," \n"[i==len]);
ll ans=0;
for(int i=1;i<=len;i++)
{
ll v=0;ans=max(ans,min(k,num[i+1]-num[i])*(ll)pre[i]);
for(int j=i+1;j<=len;j++)
{
if(num[j]-num[i]>k) break;
v+=(ll)(num[j]-num[j-1])*pre[j-1];
int rest=k-num[j]+num[i];ans=max(ans,v);
ans=max(ans,v+min(rest,num[i]-num[i-1])*pre[i-1]);
ans=max(ans,v+min(rest,num[j+1]-num[j])*pre[j]);
}
}
printf("%lld\n",ans);
return 0;
}
詳細信息
Test #1:
score: 100
Accepted
time: 0ms
memory: 3892kb
input:
8 3 3 1 4 1 5 9 2 6
output:
15
result:
ok 1 number(s): "15"
Test #2:
score: 0
Accepted
time: 0ms
memory: 3732kb
input:
2 1 -1000000000 1000000000
output:
1
result:
ok 1 number(s): "1"
Test #3:
score: 0
Accepted
time: 0ms
memory: 3764kb
input:
2 1000000000 -1000000000 1000000000
output:
1000000000
result:
ok 1 number(s): "1000000000"
Test #4:
score: 0
Accepted
time: 1ms
memory: 3920kb
input:
5000 10000 -10000 10000 -10000 10000 -10000 10000 -10000 10000 -10000 10000 -10000 10000 -10000 10000 -10000 10000 -10000 10000 -10000 10000 -10000 10000 -10000 10000 -10000 10000 -10000 10000 -10000 10000 -10000 10000 -10000 10000 -10000 10000 -10000 10000 -10000 10000 -10000 10000 -10000 10000 -10...
output:
49990000
result:
ok 1 number(s): "49990000"
Test #5:
score: 0
Accepted
time: 1ms
memory: 3844kb
input:
5000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 1...
output:
0
result:
ok 1 number(s): "0"
Test #6:
score: 0
Accepted
time: 8ms
memory: 4000kb
input:
5000 2897 8987 9710 547 6523 -4484 8892 7360 7473 -5435 8122 -1396 -9963 -1884 -5758 -2930 2867 -260 -3947 -7915 -2428 4137 -1202 -1874 7205 -2852 -6126 -9346 -8662 2294 -4453 -2430 2424 9434 -112 2906 -169 -9489 -1977 68 -9072 2785 -2258 9710 271 8817 6251 3120 4765 -8449 -6625 2617 -3931 -4024 144...
output:
7111087
result:
ok 1 number(s): "7111087"
Test #7:
score: 0
Accepted
time: 16ms
memory: 3852kb
input:
5000 6321 -5894 5183 -3582 7556 -2937 2854 -5688 1422 -7283 5712 -3719 3700 -8585 2577 -703 1839 -8871 9819 -1080 6964 -7192 1664 -9414 1863 -3638 7843 -6700 9064 -4209 7225 -2617 180 -9771 401 -3029 7485 -3877 3095 -4176 5830 -1954 8879 -9515 4671 -9834 395 -3489 6706 -5316 9004 -3536 546 -5360 686...
output:
26696461
result:
ok 1 number(s): "26696461"
Test #8:
score: 0
Accepted
time: 4ms
memory: 3840kb
input:
5000 1224 -9995 -9993 -9992 -9990 -9987 -9979 -9977 -9969 -9965 -9963 -9959 -9956 -9944 -9944 -9931 -9930 -9929 -9927 -9926 -9924 -9923 -9921 -9917 -9917 -9907 -9901 -9899 -9890 -9885 -9876 -9871 -9867 -9859 -9859 -9859 -9854 -9854 -9841 -9841 -9836 -9836 -9834 -9831 -9829 -9823 -9823 -9822 -9818 -9...
output:
1224
result:
ok 1 number(s): "1224"
Test #9:
score: 0
Accepted
time: 1ms
memory: 3832kb
input:
5000 1000000 -1000000 1000000 -1000000 1000000 -1000000 1000000 -1000000 1000000 -1000000 1000000 -1000000 1000000 -1000000 1000000 -1000000 1000000 -1000000 1000000 -1000000 1000000 -1000000 1000000 -1000000 1000000 -1000000 1000000 -1000000 1000000 -1000000 1000000 -1000000 1000000 -1000000 100000...
output:
4999000000
result:
ok 1 number(s): "4999000000"
Test #10:
score: 0
Accepted
time: 1ms
memory: 3912kb
input:
5000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000...
output:
0
result:
ok 1 number(s): "0"
Test #11:
score: 0
Accepted
time: 7ms
memory: 3852kb
input:
5000 187598 115918 -727930 454749 -650387 -131030 -583797 907610 -314887 -494840 -116261 406466 734257 -410787 342451 -14930 831297 314447 -433165 -777692 -609353 -434131 518832 320933 -199305 154559 932798 930259 214168 -930213 -34688 247952 503849 21404 311008 -785124 -503509 -476434 -654305 -2049...
output:
477553294
result:
ok 1 number(s): "477553294"
Test #12:
score: 0
Accepted
time: 23ms
memory: 4000kb
input:
5000 771022 -433847 99241 -927062 676808 -285169 89911 -510718 955902 -571570 492726 -139309 477186 -547729 353570 -725526 425661 -48956 239263 -322769 706571 -439634 141317 -391906 398130 -314133 863417 -600052 439135 -352487 753429 -139934 14119 -561827 258290 -54747 419167 -669228 189453 -373567 ...
output:
3125424072
result:
ok 1 number(s): "3125424072"
Test #13:
score: 0
Accepted
time: 26ms
memory: 3780kb
input:
5000 964263 -999875 -999003 -998711 -998242 -997924 -997483 -997289 -997020 -997006 -996326 -995855 -995273 -994500 -994316 -994065 -994038 -993391 -992800 -992573 -991083 -990368 -990156 -990045 -990029 -989806 -988798 -987858 -986711 -986697 -986484 -985989 -985838 -985087 -984605 -983535 -983207 ...
output:
964263
result:
ok 1 number(s): "964263"
Test #14:
score: 0
Accepted
time: 11ms
memory: 3844kb
input:
5000 470574 -780515 -565052 540227 331334 -814359 813817 146460 -468526 -757891 710807 -753613 885094 -727795 373597 712366 -262537 148313 -172412 979620 -921670 -746243 -317334 -673027 190226 844027 -537371 -81273 -545282 -18126 -273706 -492037 439079 69269 -523256 -263698 -564222 -357935 -520341 -...
output:
1146273041
result:
ok 1 number(s): "1146273041"
Test #15:
score: 0
Accepted
time: 18ms
memory: 3784kb
input:
5000 553999 -383027 159712 -632376 301503 -328868 532550 -798606 839794 -952568 547489 -131306 300856 -567633 559760 -931367 903728 -455406 78693 -933438 114173 -107792 402731 -901237 217199 -256503 295296 -661728 482029 -277184 759196 -711481 598907 -575679 97357 -500627 75038 -734531 924348 -35588...
output:
2371523741
result:
ok 1 number(s): "2371523741"
Test #16:
score: 0
Accepted
time: 24ms
memory: 3936kb
input:
5000 859344 -999811 -999297 -998112 -997262 -997043 -996924 -996891 -996031 -994416 -994412 -993847 -993651 -992769 -992318 -992260 -991391 -990815 -990515 -990165 -990137 -989941 -988550 -988458 -988186 -987523 -987484 -987204 -986704 -986611 -986563 -986215 -985492 -985440 -985164 -984845 -984387 ...
output:
859344
result:
ok 1 number(s): "859344"
Test #17:
score: 0
Accepted
time: 22ms
memory: 3936kb
input:
5000 753551 224979 632678 597334 347907 -462837 -823422 448533 342983 979058 -490498 -850469 -865995 -108024 -728183 -588710 -293147 10551 116713 -297921 -268837 -23504 846501 333014 -385392 -466507 -7540 -29583 695269 795887 452425 796347 -590839 -819644 544407 -805496 -624935 725714 -386377 238167...
output:
1803811669
result:
ok 1 number(s): "1803811669"
Test #18:
score: 0
Accepted
time: 24ms
memory: 3840kb
input:
5000 826108 -506082 830836 -68098 345647 -202707 920622 -435431 472585 -132184 27988 -523678 177442 -7098 222566 -399388 649621 -459957 320586 -971439 698215 -650533 307030 -658607 442217 -194639 174723 -537732 420706 -437605 6790 -835034 530710 -246859 977996 -195240 232084 -443806 733902 -952063 5...
output:
3315584633
result:
ok 1 number(s): "3315584633"
Test #19:
score: 0
Accepted
time: 1ms
memory: 3860kb
input:
5000 1000000000 -1000000000 1000000000 -1000000000 1000000000 -1000000000 1000000000 -1000000000 1000000000 -1000000000 1000000000 -1000000000 1000000000 -1000000000 1000000000 -1000000000 1000000000 -1000000000 1000000000 -1000000000 1000000000 -1000000000 1000000000 -1000000000 1000000000 -1000000...
output:
4999000000000
result:
ok 1 number(s): "4999000000000"
Test #20:
score: 0
Accepted
time: 1ms
memory: 3832kb
input:
5000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 100000000...
output:
0
result:
ok 1 number(s): "0"
Test #21:
score: 0
Accepted
time: 26ms
memory: 3996kb
input:
5000 910901608 974118216 -282189310 -464236812 467039630 667895423 339508537 58260393 -703766496 504826455 441618514 -585508328 -193759450 688197130 -930698882 707075173 -451731589 606780952 806202619 -564168107 -344313708 886153476 -454490978 83456751 819316128 -226033791 783846069 962016852 238052...
output:
2128823805323
result:
ok 1 number(s): "2128823805323"
Test #22:
score: 0
Accepted
time: 18ms
memory: 3792kb
input:
5000 588985032 -704516451 414923169 -800677127 619447000 -954729615 770758266 -931762534 27272397 -833725026 154169079 -381582191 554896373 -49834568 764715246 -331924701 905310019 -528047434 864484999 -214861685 766061970 -562403736 80706965 -595249774 34395027 -360037043 474169316 -539009420 82267...
output:
2506122577084
result:
ok 1 number(s): "2506122577084"
Test #23:
score: 0
Accepted
time: 19ms
memory: 3936kb
input:
5000 601396656 -999577358 -999572921 -999156132 -998988445 -998338146 -998211256 -998038945 -997994998 -997887793 -997649517 -997432096 -997288560 -997167770 -996929006 -996844659 -996262442 -995862352 -995756615 -993977725 -993848654 -993812317 -993269602 -989945601 -989714100 -989656489 -989620707...
output:
601396656
result:
ok 1 number(s): "601396656"
Test #24:
score: 0
Accepted
time: 15ms
memory: 3800kb
input:
5000 445151880 335388608 -983864855 357393521 770062647 827744974 -545526108 -534435204 605024122 -705912204 103448158 -738139305 364727297 281430261 -172675238 -281961119 413948381 346099745 270519920 730104458 -238273774 -905802314 376152823 -861548777 -961050775 231905794 595917998 -448202969 926...
output:
1105209149106
result:
ok 1 number(s): "1105209149106"
Test #25:
score: 0
Accepted
time: 20ms
memory: 3840kb
input:
5000 828268008 -366185717 43537035 -969463670 432669463 -708658333 371181544 -146705690 908422240 -102114887 558802051 -121266478 784840669 -751154229 248289004 -97630641 526604485 -878715075 172827431 -503917793 96759109 -566567161 123043111 -77255051 851430049 -729995131 664063215 -245947835 82485...
output:
3298927875333
result:
ok 1 number(s): "3298927875333"
Test #26:
score: 0
Accepted
time: 16ms
memory: 3788kb
input:
5000 494515929 -998443173 -997962724 -997811093 -997050271 -996647991 -996462586 -996187002 -995098290 -994915961 -994693384 -993157827 -992556757 -992377058 -991828368 -991720044 -990191984 -989488632 -989460779 -989428746 -989426749 -989005160 -988154542 -988098377 -987732188 -987725414 -986059452...
output:
494515929
result:
ok 1 number(s): "494515929"
Test #27:
score: 0
Accepted
time: 13ms
memory: 3860kb
input:
5000 389467560 -355218502 19492307 832179059 -631947044 935717022 274471954 872869200 156904530 83349139 -477811990 571172633 -538728871 117753184 -247675975 -732940325 -425404355 -747605841 -265162779 24377021 -427201133 -402790810 39821003 -49644095 91606703 984812673 113022632 -153390083 -6280921...
output:
965641468960
result:
ok 1 number(s): "965641468960"
Test #28:
score: -100
Wrong Answer
time: 24ms
memory: 3876kb
input:
5000 813212099 -657788296 843272324 -351105712 788755663 -67494572 830255812 -614845562 473640368 -597118733 888267739 -542061284 259243988 -826115211 952166002 -157248546 455415682 -622531587 525875941 -290925573 189728869 -214519619 892913421 -133331337 840915923 -793676784 517885652 -999986637 88...
output:
3237690712741
result:
wrong answer 1st numbers differ - expected: '3237694465547', found: '3237690712741'