QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#43620 | #4238. Zero Sum | justcyl | WA | 297ms | 7348kb | C++20 | 1.7kb | 2022-08-09 20:25:47 | 2022-08-09 20:25:50 |
Judging History
answer
#include <bits/stdc++.h>
#define F(i, x, y) for (int i = x; i <= y; i++)
#define D(i, x, y) for (int i = x; i >= y; i--)
#define pr printf
#define mst(a,b) memset(a,b,sizeof a)
#define SZ(x) ((int)x.size())
#define ll long long
#define x first
#define y second
#define pb emplace_back
#define mp make_pair
#define pii pair<int,int>
#define IOS ios::sync_with_stdio(false),cin.tie(nullptr)
#define YN(ok) cout << (ok ? "YES" : "NO") << '\n';
#ifdef LOCAL_DEFINE
#include "bits/debug.h"
#else
#define DEB(...)
#endif
using namespace std;
void read(){}
template<typename T,typename... T2>inline void read(T &x,T2 &... oth) { x=0;int ch=getchar(),f=0;while(ch<'0'||ch>'9') { if (ch=='-') f=1;ch=getchar();}while(ch>='0'&&ch<='9') { x=(x<<1)+(x<<3)+(ch^48);ch=getchar();}if(f)x=-x;read(oth...);}
const int N = 35001,M=4;
const ll inf=1152921504606846976;
vector<ll> f,g;
vector<ll> a[N];
int n,m,C;
bool cmp(vector<ll> u,vector<ll> v){
return u[m+m+1]<v[m+m+1];
}
signed main()
{
#ifdef LOCAL_DEFINE
freopen("temp.in", "r", stdin);
#endif
srand(time(0));
read(n,m);
F(i,1,n){
a[i].resize(m+m+2);
F(j,0,m+m) read(a[i][j]);
a[i][m+m+1]=rand()%(2*n);
}
C=(m*((int)sqrt(n)+5));
DEB(C);
sort(a+1,a+n+1,cmp);
F(i,0,C*2) f.pb(inf);
f[C]=0;
F(i,1,n){
g.clear();
F(i,0,C*2) g.pb(inf);
// DEB(SZ(g));
F(j,0,m+m){
int w=SZ(f)-1;
F(k,m-j,w){
if(j+k>C*2) break;
g[j-m+k]=min(g[j-m+k],f[k]+a[i][j]);
// DEB(g[C]);
}
}
swap(f,g);
}
pr("%lld",f[C]);
return 0;
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 3ms
memory: 4608kb
input:
3 1 3 14 15 -3 -5 -35 2 71 82
output:
-19
result:
ok 1 number(s): "-19"
Test #2:
score: 0
Accepted
time: 3ms
memory: 4492kb
input:
5 2 1 2 5 14 42 1 2 3 5 8 1 2 4 8 16 1 2 3 4 5 1 2 6 24 120
output:
16
result:
ok 1 number(s): "16"
Test #3:
score: 0
Accepted
time: 2ms
memory: 4624kb
input:
10 2 -904071845 760493887 -478285804 759035367 -680013382 -587322944 665345507 -20509293 103731947 864888628 738633646 936703855 -370523881 301151360 478433861 703775172 -913389861 691762973 -185132991 543994805 -511007159 118916858 891184 349354959 267412081 -663269925 14450557 369277951 237764429 ...
output:
-6259997315
result:
ok 1 number(s): "-6259997315"
Test #4:
score: 0
Accepted
time: 2ms
memory: 4444kb
input:
10 2 -566639283 -281454349 687175663 817449090 928108928 -819788458 -442586076 -451652406 403601435 -168825683 -649266596 187412594 -856159947 476347172 20574258 -390470703 -791341926 -60895976 842388030 507828204 159048971 -531035734 -110061386 255061473 -622553675 767534638 296274618 318355641 -60...
output:
-5863402983
result:
ok 1 number(s): "-5863402983"
Test #5:
score: 0
Accepted
time: 165ms
memory: 6824kb
input:
35000 2 -323024395 123746159 618869974 -455533063 294962647 9971372 784839881 -906564905 -578266269 944975915 968956358 -576765224 448197684 986539127 -525297570 -745293354 426913995 129954892 255813154 -243728523 -922616050 -983803120 -317189892 362753890 481320837 -626411581 760532893 481031139 14...
output:
-23326299571078
result:
ok 1 number(s): "-23326299571078"
Test #6:
score: 0
Accepted
time: 290ms
memory: 7348kb
input:
35000 3 -389986454 -678028773 330282316 582141258 -976039033 415560778 -256794145 891726219 -744524869 671251658 67347457 -91229912 -787543984 364694820 606490044 511500731 766802212 79214055 -745406592 -843185684 -709300461 -806048178 750955329 92731052 -740911920 943335651 -961204999 72788590 5815...
output:
-26267884225753
result:
ok 1 number(s): "-26267884225753"
Test #7:
score: 0
Accepted
time: 284ms
memory: 7216kb
input:
35000 3 -205476456 82285866 -35594070 0 53353652 -49927864 -111238731 113551347 -133551112 19375782 0 -89200221 121851958 207015309 57966468 -78468406 -89972877 0 -14958562 -153791584 207214716 41705397 -138035132 34758504 0 -91078140 3818342 -281759472 199952820 -173442272 -63649020 0 69365700 -761...
output:
-5671382440154
result:
ok 1 number(s): "-5671382440154"
Test #8:
score: 0
Accepted
time: 291ms
memory: 7300kb
input:
35000 3 -104465988 -61243572 -85539391 0 7491458 10264978 124155243 -268558005 -154632718 -21620750 0 27153711 122054610 116554080 -37253310 -179203364 -12517155 0 24722702 80407004 66380241 -37560414 -147869008 -55350255 0 21547694 5632026 174871269 -209389992 -184668276 -34948820 0 9415470 8251568...
output:
-6078227814541
result:
ok 1 number(s): "-6078227814541"
Test #9:
score: 0
Accepted
time: 297ms
memory: 7216kb
input:
35000 3 902444553 382219274 435764110 878892951 655614413 151116197 232298986 213739238 198177043 698942673 772039014 372652389 180586024 6396281 87942969 598386916 -49947342 39272933 968460479 949268130 968282113 738343828 95663007 635955539 -9208067 652112369 431840638 284151628 -58473132 30378755...
output:
-14462236943288
result:
ok 1 number(s): "-14462236943288"
Test #10:
score: -100
Wrong Answer
time: 287ms
memory: 7292kb
input:
35000 3 113961247 593708547 248864537 180118601 925518310 15254920 577036150 279961671 63364217 713049091 937580207 329002834 77859362 357285128 881748603 693652749 303956346 894180781 819899770 372981112 353387093 365389658 535559085 447104136 272739305 115939848 179347884 709464863 -99411860 39686...
output:
-636785249208
result:
wrong answer 1st numbers differ - expected: '-636458673506', found: '-636785249208'