QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#245177 | #7767. 数据结构 | Crysfly | 50 | 5203ms | 205668kb | C++17 | 7.1kb | 2023-11-09 19:36:35 | 2023-11-09 19:36:36 |
Judging History
answer
// what is matter? never mind.
#pragma GCC optimize("Ofast")
#pragma GCC optimize("unroll-loops")
//#pragma GCC target("sse,sse2,sse3,sse4,popcnt,abm,mmx,avx,avx2")
#include<bits/stdc++.h>
#define For(i,a,b) for(int i=(a);i<=(b);++i)
#define Rep(i,a,b) for(int i=(a);i>=(b);--i)
#define ll long long
//#define int long long
#define ull unsigned long long
using namespace std;
inline ll read()
{
char c=getchar();ll x=0;bool f=0;
for(;!isdigit(c);c=getchar())f^=!(c^45);
for(;isdigit(c);c=getchar())x=(x<<1)+(x<<3)+(c^48);
if(f)x=-x;return x;
}
#define fi first
#define se second
#define pb push_back
#define mkp make_pair
typedef pair<int,int>pii;
typedef vector<int>vi;
#define maxn 400005
#define inf 0x3f3f3f3f
mt19937_64 rng(114);
int n;
struct dat{
ull c,s;
dat(ull x=0,ull y=0){c=x,s=y;}
void add(ull x){
s+=c*x;
}
};
dat operator +(dat a,dat b){
return dat(a.c+b.c,a.s+b.s);
}
dat operator -(dat a,dat b){
return dat(a.c-b.c,a.s-b.s);
}
struct node{
dat s0,s[4];
node(){
s0=0;
For(i,0,3)s[i]=0;
}
};
node operator +(node a,node b){
node c;
c.s0=a.s0+b.s0;
For(i,0,3)c.s[i]=a.s[i]+b.s[i];
return c;
}
//void operator +=(node&a,node b){
// a=a+b;
//}
struct oper{
ull t0,t[4];
oper(){
t0=0;
For(i,0,3)t[i]=0;
}
bool emp(){
For(i,0,3)if(t[i])return 0;
if(t0)return 0;
return 1;
}
};
oper operator +(oper a,oper b){
oper c;
c.t0=a.t0+b.t0;
For(i,0,3)c.t[i]=a.t[i]+b.t[i];
return c;
}
node operator +(node a,oper b){
a.s0.add(b.t0);
For(i,0,3){
a.s[i].add(b.t0);
a.s0.s+=a.s[i].c*b.t[i];
a.s[i].add(b.t[i]);
}
return a;
}
oper mov(oper a){
For(i,0,2)a.t[i]=a.t[i+1];
a.t[3]=0;
return a;
}
node movup(node a){
Rep(i,3,1)a.s[i]=a.s[i-1]; a.s[0]=0;
return a;
}
namespace T{
int rt[maxn],ls[maxn],rs[maxn];
node v[maxn],s[maxn];
oper tag[maxn],tag2[maxn];
unsigned rnd[maxn];
void up(int x){
s[x]=s[ls[x]]+v[x]+s[rs[x]];
}
void pt(int x,oper y){
if(!x)return;
tag[x]=tag[x]+y;
tag2[x]=tag2[x]+y;
v[x]=v[x]+y;
s[x]=s[x]+y;
}
void down(int x){
if(!x || tag[x].emp())return;
pt(ls[x],tag[x]),pt(rs[x],tag[x]),tag[x]=oper();
}
void split(int p,int k,int&x,int&y){
if(!p)return x=y=0,void();
down(p);
if(p<=k)x=p,split(rs[p],k,rs[p],y);
else y=p,split(ls[p],k,x,ls[p]); up(p);
}
void split(int p,int k,int&x,int&y,int&z){
int t;
split(p,k-1,x,t);
split(t,k,y,z);
}
int merge(int x,int y){
if(!x||!y)return x|y;
down(x),down(y);
if(rnd[x]<rnd[y])return rs[x]=merge(rs[x],y),up(x),x;
return ls[y]=merge(x,ls[y]),up(y),y;
}
};
#define ls(x) ch[x][0]
#define rs(x) ch[x][1]
int fa[maxn],ch[maxn][2];
oper tag[maxn];
node v[maxn],s[maxn];
bool rev[maxn];
bool chk(int x){return rs(fa[x])==x;}
bool nrt(int x){return ls(fa[x])==x||rs(fa[x])==x;}
void up(int x){
s[x]=s[ls(x)]+v[x]+s[rs(x)]+movup(T::s[T::rt[x]]);
}
void pr(int x){
rev[x]^=1;
swap(ls(x),rs(x));
}
void update(int u,ull x){
// if(x)cerr<<"update "<<u<<" "<<x<<"\n";
oper t;
t.t[0]=x;
v[u]=v[u]+t;
}
void pt(int x,oper y){
if(!x || y.emp())return;
assert(x);
tag[x]=tag[x]+y;
// cout<<"pushtag "<<x<<"\n";
// For(i,0,3)cout<<y.t[i]<<" "; cout<<"\n";
update(x,y.t0+y.t[0]);
s[x]=s[x]+y;
T::pt(T::rt[x],mov(y));
}
void down(int x){
if(rev[x]){
if(ls(x))pr(ls(x));
if(rs(x))pr(rs(x));
rev[x]=0;
}
if(!tag[x].emp()){
if(ls(x))pt(ls(x),tag[x]);
if(rs(x))pt(rs(x),tag[x]);
tag[x]=oper();
}
}
void downall(int p){
if(nrt(p))downall(fa[p]);
down(p);
}
void rot(int x){
int y=fa[x],z=fa[y],k=chk(x),s=ch[x][!k];
fa[x]=z; if(nrt(y)) ch[z][chk(y)]=x;
fa[y]=x; ch[x][!k]=y;
if(s)fa[s]=y; ch[y][k]=s; up(y),up(x);
}
void splay(int x){
if(!x)return;
downall(x);
while(nrt(x)){
int y=fa[x];
if(nrt(y))rot(chk(x)==chk(y)?y:x);
rot(x);
}
}
int findL(int x){
down(x);
while(ls(x))down(x=ls(x));
return splay(x),x;
}
int st[maxn],tp;
void ins(int x,int y){
// cout<<"ins "<<x<<" "<<y<<"\n";
y=findL(y);
int a,b;
T::split(T::rt[x],y,a,b);
// T::v[y]=T::s[y]=[y]; // wrong.
node tmp;
tmp.s0=s[y].s0;
int z=y;
For(i,0,3){
tmp.s[i]=tmp.s[i]+v[z].s[0];
For(j,0,2-i) tmp.s[i+j+1]=tmp.s[i+j+1]+T::s[T::rt[z]].s[j];
if(i==3 || !rs(z))break;
z=findL(rs(z)),splay(z);
}
// cout<<"tmp:\n";
// For(i,0,3)cout<<tmp.s[i].s<<" ";puts("");
splay(y);
T::v[y]=T::s[y]=tmp;
T::tag[y]=T::tag2[y]=oper();
T::rt[x]=T::merge(T::merge(a,y),b);
}
void del(int x,int y){
// cout<<"del "<<x<<" "<<y<<"\n";
int a,b,c;
y=findL(y),splay(y);
T::split(T::rt[x],y,a,b,c);
assert(b==y);
oper tmp=T::tag2[y];
// For(i,0,3) cout<<tmp.t[i]<<" "; cout<<"val_y\n";
oper tt; tt.t0=tmp.t0;
pt(y,tt); tt.t0=0;
int z=y;
For(i,0,3){
For(j,0,3-i) tt.t[j]=tmp.t[i+j];
T::pt(T::rt[z],mov(tt));
//v[z]
// oper tt0; tt0.t[0]=tmp.t[i];
update(z,tmp.t[i]);
up(z);
if(i==3 || !rs(z))break;
z=findL(rs(z)),splay(z);
}
splay(y);
T::rt[x]=T::merge(a,c);
}
void make(int x,int y){
// cout<<"mak "<<x<<" "<<y<<"\n";
if(rs(x)){
int tmp=rs(x); rs(x)=0;
ins(x,tmp);
}
splay(y);
// cout<<"mk "<<x<<" "<<y<<"\n";
if(y){
del(x,y);
splay(y);
}
rs(x)=y;
up(x);
}
void acc(int x){
// cout<<"acc "<<x<<"\n";
tp=0;
for(int y=0;x;x=fa[y=x]) splay(x),st[++tp]=x;
// For(i,1,tp) cout<<st[i]<<" "; cout<<"\n";
Rep(i,tp,1){
splay(st[i]);
make(st[i],st[i-1]);
}
// cout<<"done\n";
}
void mkrt(int x){acc(x),splay(x),pr(x);}
void split(int x,int y){
mkrt(x),acc(y),splay(y);
}
void dfs(int u){
if(!u)return;
down(u);
if(ls(u))dfs(ls(u));
cout<<u<<" ";
if(rs(u))dfs(rs(u));
}
vi e[maxn];
void dfs(int u,int pa){
for(int v:e[u])
if(v!=pa){
fa[v]=u;
dfs(v,u),ins(u,v);
}
up(u);
}
int m;
signed main()
{
// freopen("3.in","r",stdin);
// freopen("my.out","w",stdout);
n=read(),m=read();
For(i,2,n){
int u=read(),v=read();
e[u].pb(v),e[v].pb(u);
}
For(i,1,n)T::rnd[i]=rng(),v[i].s0.c=v[i].s[0].c=1;
dfs(1,0);
// For(i,1,n)cout<<fa[i]<<" ";cout<<" fa\n";
For(_,1,m){
int op=read(),u,v,k,x;
if(op==1){
u=read(),v=read(),k=read(),x=read();
oper t;
For(i,0,k) t.t[i]=x;
split(u,v);
// dfs(v);cout<<" ---\n";
// cout<<"pushtag "<<(t.emp())<<"\n";
pt(v,t);
}
if(op==2){
u=read(),x=read();
mkrt(1);
acc(u),splay(u);
oper t; t.t0=x;
update(u,x);
T::pt(T::rt[u],t);
up(u);
}
if(op==3){
u=read(),v=read(),k=read();
split(u,v);
ull res=0;
For(i,0,k)res+=s[v].s[i].s;
cout<<res<<"\n";
}
if(op==4){
u=read();
mkrt(1);
acc(u),splay(u);
ull res=0;
res+=::v[u].s[0].s;
res+=T::s[T::rt[u]].s0.s;
cout<<res<<"\n";
}
// For(i,1,n){
// cout<<"ASK "<<i<<"\n";
// split(i,i);
// cout<<"i: "<<i<<" "<<::v[i].s0.s<<" "<<::v[i].s0.c<<" "<<s[i].s0.s<<" "<<s[i].s0.c<<"\n";
// }
// cout<<"\n";
}
return 0;
}
/*
8 6
1 2
1 3
2 4
2 5
2 8
4 6
4 7
1 6 8 0 1
1 6 8 1 1
*/
Details
Tip: Click on the bar to expand more detailed information
Subtask #1:
score: 10
Accepted
Test #1:
score: 10
Accepted
time: 79ms
memory: 193532kb
input:
5000 5000 1 2 2 3 3 4 4 5 5 6 5 7 6 8 7 9 9 10 8 11 11 12 12 13 12 14 14 15 15 16 16 17 16 18 18 19 18 20 20 21 20 22 22 23 23 24 23 25 23 26 26 27 27 28 28 29 27 30 30 31 29 32 32 33 33 34 32 35 35 36 36 37 35 38 36 39 38 40 38 41 41 42 42 43 43 44 42 45 44 46 45 47 47 48 48 49 48 50 49 51 51 52 52...
output:
37227703492 2136305359188 2794367845468 1309925069860 1698169768858 2678958746332 6690595071246 2087826052960 5786332239171 2186592622 4014965079076 1674542130 6524658548 7094033144666 10065416610040 11589693473717 492570862 3356228199498 2834694279 4198036633070 4395772262 4221137767 9630829210 992...
result:
ok 2559 numbers
Test #2:
score: 0
Accepted
time: 110ms
memory: 194860kb
input:
5000 5000 54 2 1945 3 4131 4 1207 5 3558 6 3582 7 1648 8 3498 9 1761 10 360 11 3617 12 4359 13 158 14 2314 15 529 16 4619 17 1070 18 1504 19 2675 20 2981 21 2142 22 1349 23 1640 24 1374 25 4059 26 2511 27 2708 28 2939 29 3017 30 3320 31 4602 32 4779 33 2697 34 3906 35 1121 36 197 37 1551 38 1119 39 ...
output:
0 198262395 0 0 1595057854 0 0 39277179818 13451201574 21469030838 0 0 23554220364 19140694248 212211615641 0 0 0 0 0 86500798 60136122614 47351162248 0 0 306346383502 230306838988 0 170207438 471673864986 387605196674 0 0 0 688392707 115968801311 199501119668 168720065378 634329317954 0 0 155717506...
result:
ok 2456 numbers
Subtask #2:
score: 0
Time Limit Exceeded
Test #3:
score: 10
Accepted
time: 5203ms
memory: 201060kb
input:
200000 200000 1 2 1 3 1 4 3 5 1 6 1 7 7 8 8 9 2 10 1 11 5 12 1 13 7 14 10 15 2 16 7 17 11 18 5 19 5 20 1 21 16 22 1 23 3 24 20 25 14 26 2 27 6 28 15 29 10 30 15 31 5 32 13 33 12 34 31 35 31 36 36 37 36 38 1 39 28 40 5 41 12 42 41 43 20 44 30 45 22 46 11 47 47 48 45 49 14 50 41 51 3 52 30 53 29 54 6 ...
output:
0 0 0 0 0 0 0 0 7615073807 4176911055 0 4745654848 6222845818 0 0 9739142819 0 1424960716 5224818790 9459319003 13717923473 8673060864 0 11610197664 0 0 9587792729 0 0 0 2747489046 12425650803 0 0 11191496476 0 37597503993 0 0 15164651949 14868775382 15559673116 0 16391028892 0 15726757336 0 2421390...
result:
ok 100169 numbers
Test #4:
score: -10
Time Limit Exceeded
input:
200000 200000 121679 2 13340 3 45206 4 112138 5 47397 6 88216 7 173469 8 109861 9 58662 10 130056 11 61155 12 4313 13 196310 14 46189 15 32349 16 143798 17 103215 18 159921 19 27365 20 14332 21 49504 22 64451 23 106931 24 59878 25 177587 26 100555 27 86848 28 793 29 79845 30 150813 31 42854 32 11551...
output:
77900221111 0 0 476439705914 0 216029652830 0 0 631267909751 508097390689 0 29277716182 695169620128 0 809294022024 0 0 829507748883 260130797154 0 1005527232590 109198360548 821333235719 0 0 1265757368752 738460021055 296232170804 845184728833 0 434366813420 0 1922343637889 0 0 0 229703081048 0 441...
result:
Subtask #3:
score: 5
Accepted
Test #5:
score: 5
Accepted
time: 4169ms
memory: 205668kb
input:
200000 200000 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18 19 19 20 20 21 21 22 22 23 23 24 24 25 25 26 26 27 27 28 28 29 29 30 30 31 31 32 32 33 33 34 34 35 35 36 36 37 37 38 38 39 39 40 40 41 41 42 42 43 43 44 44 45 45 46 46 47 47 48 48 49 49 50 50 51 51 ...
output:
0 134315201201061 38210069287857 75889674481730 25202765567748 179527420359031 75824479907233 156951577189979 246509811214535 251383387317167 181645886595511 285463150681348 213797241401335 244909583142805 53376921005282 451665818220 379334117147250 720759810155057 768646965102274 224741692238593 18...
result:
ok 100065 numbers
Test #6:
score: 0
Accepted
time: 4175ms
memory: 205580kb
input:
200000 200000 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18 19 19 20 20 21 21 22 22 23 23 24 24 25 25 26 26 27 27 28 28 29 29 30 30 31 31 32 32 33 33 34 34 35 35 36 36 37 37 38 38 39 39 40 40 41 41 42 42 43 43 44 44 45 45 46 46 47 47 48 48 49 49 50 50 51 51 ...
output:
0 1950387013442 2906443199266 2144858813468 3137341049831 1081425884175 20924388962208 73530126133368 136609133052209 125022026678010 22502893517249 99022896674514 84010333777754 13909990392191 43442491331837 190816082733002 92810414504491 244006706308139 42843404030538 126151201042579 7249812065288...
result:
ok 99740 numbers
Subtask #4:
score: 10
Accepted
Test #7:
score: 10
Accepted
time: 3985ms
memory: 201136kb
input:
200000 200000 1 2 2 3 3 4 1 5 3 6 5 7 5 8 7 9 2 10 7 11 11 12 10 13 6 14 3 15 14 16 4 17 11 18 3 19 14 20 4 21 4 22 12 23 18 24 5 25 5 26 14 27 13 28 24 29 11 30 26 31 29 32 28 33 31 34 23 35 33 36 6 37 11 38 22 39 13 40 35 41 37 42 21 43 12 44 4 45 16 46 12 47 21 48 1 49 26 50 45 51 41 52 46 53 7 5...
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 99786 numbers
Test #8:
score: 0
Accepted
time: 3023ms
memory: 204408kb
input:
200000 200000 1 2 2 3 1 4 1 5 2 6 3 7 6 8 8 9 8 10 9 11 8 12 12 13 13 14 11 15 13 16 13 17 16 18 17 19 18 20 19 21 19 22 21 23 21 24 21 25 24 26 23 27 26 28 27 29 26 30 30 31 28 32 29 33 32 34 32 35 33 36 36 37 35 38 38 39 38 40 40 41 39 42 42 43 43 44 41 45 45 46 43 47 45 48 46 49 49 50 50 51 51 52...
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 100404 numbers
Test #9:
score: 0
Accepted
time: 4675ms
memory: 201764kb
input:
200000 200000 166945 2 60190 3 101888 4 154621 5 188595 6 175999 7 140051 8 54071 9 167394 10 54228 11 48270 12 14564 13 25727 14 138072 15 77670 16 77795 17 155644 18 171648 19 94412 20 65323 21 130225 22 6359 23 17410 24 8580 25 142556 26 152863 27 166869 28 115234 29 87099 30 160349 31 98200 32 1...
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 99768 numbers
Subtask #5:
score: 10
Accepted
Dependency #4:
100%
Accepted
Test #10:
score: 10
Accepted
time: 4037ms
memory: 200984kb
input:
200000 200000 1 2 1 3 2 4 1 5 2 6 2 7 2 8 5 9 3 10 10 11 5 12 4 13 5 14 9 15 11 16 14 17 12 18 13 19 2 20 16 21 3 22 16 23 2 24 7 25 8 26 20 27 21 28 11 29 12 30 4 31 2 32 21 33 14 34 29 35 16 36 21 37 28 38 22 39 27 40 12 41 36 42 32 43 30 44 3 45 43 46 4 47 14 48 44 49 9 50 37 51 20 52 11 53 31 54...
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 100258 numbers
Test #11:
score: 0
Accepted
time: 4748ms
memory: 202612kb
input:
200000 200000 184821 2 53793 3 183415 4 113765 5 178864 6 46342 7 933 8 197825 9 177971 10 143394 11 99313 12 188890 13 25495 14 60986 15 162307 16 135027 17 145920 18 109359 19 5215 20 75134 21 53020 22 160666 23 30142 24 23800 25 38903 26 121838 27 164296 28 86957 29 89705 30 108331 31 147730 32 2...
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 100336 numbers
Subtask #6:
score: 15
Accepted
Dependency #4:
100%
Accepted
Dependency #5:
100%
Accepted
Test #12:
score: 15
Accepted
time: 3897ms
memory: 202000kb
input:
200000 200000 1 2 1 3 2 4 2 5 5 6 3 7 2 8 3 9 4 10 7 11 9 12 7 13 2 14 12 15 6 16 5 17 14 18 3 19 14 20 13 21 8 22 7 23 12 24 5 25 3 26 18 27 9 28 8 29 6 30 22 31 5 32 6 33 28 34 19 35 24 36 24 37 35 38 7 39 32 40 20 41 19 42 14 43 1 44 5 45 30 46 9 47 30 48 5 49 44 50 7 51 13 52 11 53 19 54 31 55 4...
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 540038770 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ...
result:
ok 100044 numbers
Test #13:
score: 0
Accepted
time: 4429ms
memory: 203480kb
input:
200000 200000 1 2 1 3 2 4 2 5 3 6 3 7 4 8 4 9 5 10 5 11 6 12 6 13 7 14 7 15 8 16 8 17 9 18 9 19 10 20 10 21 11 22 11 23 12 24 12 25 13 26 13 27 14 28 14 29 15 30 15 31 16 32 16 33 17 34 17 35 18 36 18 37 19 38 19 39 20 40 20 41 21 42 21 43 22 44 22 45 23 46 23 47 24 48 24 49 25 50 25 51 26 52 26 53 ...
output:
0 0 0 0 0 0 510 0 0 0 0 0 0 0 0 405 0 0 0 12322 0 1670 283520 0 0 0 0 0 407680 177845 0 405 0 0 0 0 1464 490 61 0 0 465860 0 16472 0 1534 265620 422870 767 0 0 0 788 280990 322 0 0 198 893 79486 0 767 0 0 0 0 0 0 40 1300 114170 14950 280978 0 0 58950 296946 436080 1512 9726 0 0 226707 325962 312984 ...
result:
ok 100096 numbers
Test #14:
score: 0
Accepted
time: 4184ms
memory: 202564kb
input:
200000 200000 1 2 1 3 2 4 2 5 3 6 3 7 4 8 4 9 5 10 5 11 6 12 6 13 7 14 7 15 8 16 8 17 9 18 9 19 10 20 10 21 11 22 11 23 12 24 12 25 13 26 13 27 14 28 14 29 15 30 15 31 16 32 16 33 17 34 17 35 18 36 18 37 19 38 19 39 20 40 20 41 21 42 21 43 22 44 22 45 23 46 23 47 24 48 24 49 25 50 25 51 26 52 26 53 ...
output:
0 0 0 0 304142 0 289115 0 224 0 576 637 154 0 0 0 0 364608 0 910496 333282 758 158646 0 1291 242188 365040 0 1333572 0 249 593761 180642 0 850 1186 0 89320 316618 704925 0 0 2475 148508 242 67518 979 0 67224 1692359 920722 3014 0 518286 0 1311330 1369518 1008436 3095052 511760 1650509 298410 1803117...
result:
ok 100062 numbers
Test #15:
score: 0
Accepted
time: 3626ms
memory: 204000kb
input:
200000 200000 1 2 2 3 2 4 3 5 4 6 6 7 7 8 8 9 8 10 9 11 11 12 12 13 12 14 13 15 15 16 16 17 17 18 17 19 19 20 19 21 21 22 22 23 22 24 23 25 24 26 25 27 27 28 27 29 28 30 29 31 30 32 31 33 33 34 34 35 34 36 35 37 36 38 38 39 39 40 39 41 40 42 41 43 43 44 43 45 44 46 46 47 47 48 48 49 49 50 50 51 51 5...
output:
0 0 0 0 21346853945576 48396643270631 4321029030 37003305606483 17683419927060 561778302 94539925025025 561778302 19563617093670 0 17946414540 32901956622 13400634896 1907726287 290652131875362 498785221322560 566362662702578 553392549765534 3570739868 1016393566 16079113938 119565043564896 46196526...
result:
ok 100401 numbers
Test #16:
score: 0
Accepted
time: 5055ms
memory: 202604kb
input:
200000 200000 170804 2 114218 3 118786 4 81407 5 92607 6 121128 7 39792 8 17516 9 151784 10 45071 11 109409 12 10487 13 65474 14 193833 15 28336 16 144805 17 198454 18 107320 19 181481 20 138015 21 10446 22 181869 23 174873 24 194511 25 46182 26 42247 27 111765 28 80980 29 64828 30 33044 31 133963 3...
output:
0 0 0 0 0 0 0 0 0 0 0 0 0 0 536682891 0 0 0 0 0 0 0 0 0 894471485 0 0 0 0 0 0 0 0 0 0 0 1073365782 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 178894297 0 0 0 0 0 0 0 0 124910174 0 69868842 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1967837267 0 0 0 42599187462 0 536682891 0 0 0 0 0 687005957 0 0 0 562095783 0 0...
result:
ok 100179 numbers
Subtask #7:
score: 0
Skipped
Dependency #2:
0%
Subtask #8:
score: 0
Skipped
Dependency #1:
100%
Accepted
Dependency #2:
0%