QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#307324 | #8002. 字符树 | Lynkcat | 80 | 1663ms | 70044kb | C++20 | 6.3kb | 2024-01-18 13:59:24 | 2024-01-18 13:59:25 |
Judging History
answer
#include<bits/stdc++.h>
#define poly vector<int>
#define IOS ios::sync_with_stdio(false)
#define ll long long
#define mp make_pair
#define mt make_tuple
#define pa pair < int,int >
#define fi first
#define se second
#define mod 998244353
#define sz(x) (int)((x).size())
// #define int ll
//#define N
using namespace std;
const int N=500005,inf=1e9+1;
int siz[N],Son[N],dep[N];
int lson[N],rson[N],rfa[N],All[N],Tp[N],pos[N];
int tim[N],TIM;
int mn[N],tot[N],smn[N],tag[N],a[N];
ll sm[N];
int n,son[N][2];
int Lim[N],val[N];
int siz1[N],son1[N];
poly G[N];
ll ans[N];
int ffa[N];
int fail[N];
bool vis[N];
inline int build(poly &g,poly &g1,int l,int r,int Dep=0)
{
if (l>r) return 0;
int mid=lower_bound(g1.begin()+l,g1.begin()+r+1,(g1[l]+g1[r])/2)-g1.begin();
int u=g[mid];
lson[u]=build(g,g1,l,mid-1,Dep+1);
rson[u]=build(g,g1,mid+1,r,Dep+1);
All[u]=All[lson[u]]+All[rson[u]]+1;
return u;
}
inline void chk(int k)
{
if (k==0) return;
if (tim[k]!=TIM)
tag[k]=mn[k]=sm[k]=a[k]=0,smn[k]=inf,tot[k]=All[k],tim[k]=TIM;
}
inline void ptag(int k,int x)
{
if (k==0) return;
if (a[k]==mn[k]) a[k]+=x;
mn[k]+=x;
sm[k]+=1ll*x*tot[k];
tag[k]+=x;
}
inline void pushdown(int k)
{
chk(lson[k]);chk(rson[k]);
if (!tag[k]) return;
if (mn[lson[k]]+tag[k]==mn[k])
ptag(lson[k],tag[k]);
if (mn[rson[k]]+tag[k]==mn[k])
ptag(rson[k],tag[k]);
tag[k]=0;
}
inline void pushup(int k)
{
sm[k]=a[k]+sm[lson[k]]+sm[rson[k]];
mn[k]=mn[lson[k]],tot[k]=tot[lson[k]],smn[k]=smn[lson[k]];
if (a[k]<mn[k]) smn[k]=mn[k],tot[k]=1,mn[k]=a[k];
else
if (a[k]==mn[k]) tot[k]++;
else
if (a[k]<smn[k]) smn[k]=a[k];
if (mn[rson[k]]<mn[k])
{
smn[k]=mn[k],mn[k]=mn[rson[k]],tot[k]=tot[rson[k]];
} else
if (mn[rson[k]]==mn[k])
{
tot[k]+=tot[rson[k]];
} else
if (mn[rson[k]]<smn[k])
{
smn[k]=mn[rson[k]];
}
if (smn[rson[k]]<smn[k]) smn[k]=smn[rson[k]];
}
inline void upd1(int k,int y)
{
if (!k) return;
chk(k);
pushdown(k);
if (y>=smn[k])
{
a[k]=max(a[k],y);
upd1(lson[k],y);
upd1(rson[k],y);
pushup(k);
} else
if (y<smn[k]&&y>mn[k])
{
ptag(k,y-mn[k]);
}
}
inline void upd(int k,int l,int r,int y)
{
if (!k) return;
if (r-l+1==All[k])
{
upd1(k,y);
return;
}
chk(k);
pushdown(k);
if (l<=pos[k]&&pos[k]<=r) a[k]=max(a[k],y);
if (l<pos[k]) upd(lson[k],l,min(r,pos[k]-1),y);
if (r>pos[k]) upd(rson[k],max(l,pos[k]+1),r,y);
pushup(k);
}
inline ll qry(int k,int l,int r)
{
if (!k) return 0;
chk(k);
if (r-l+1==All[k]) return sm[k];
pushdown(k);
ll res=0;
if (l<=pos[k]&&pos[k]<=r) res+=a[k];
if (l<pos[k]) res+=qry(lson[k],l,min(r,pos[k]-1));
if (r>pos[k]) res+=qry(rson[k],max(l,pos[k]+1),r);
return res;
}
void dfs(int k)
{
siz1[k]=1;son1[k]=0;
for (auto u:G[k])
{
dfs(u);
siz1[k]+=siz1[u];
if (siz1[u]>siz1[son1[k]]) son1[k]=u;
}
}
inline void ins(int k)
{
int v=val[k];
int L=Lim[k];
while (k)
{
if (pos[k]-dep[k]+L>=0)
{
upd(Tp[k],pos[k]-dep[k]+L,pos[k],v);
break;
}
upd(Tp[k],0,pos[k],v);
k=rfa[Tp[k]];
}
}
inline ll qry(int k)
{
ll res=0;
while (k)
{
res+=qry(Tp[k],0,pos[k]);
k=rfa[Tp[k]];
}
return res;
}
void ins(int k,int fa)
{
ins(k);
for (auto u:G[k])
{
ins(u,k);
}
}
void dfs1(int k)
{
for (auto u:G[k])
{
if (u==son1[k]) continue;
dfs1(u);
TIM++;
}
if (son1[k]) dfs1(son1[k]);
ins(k);
for (auto u:G[k])
{
if (u==son1[k]) continue;
ins(u,k);
}
ans[k]=qry(k);
}
void BellaKira()
{
mn[0]=inf,smn[0]=inf;
++TIM;
cin>>n;
for (int i=1;i<=n;i++)
{
ans[i]=All[i]=son[i][0]=son[i][1]=0,vis[i]=0,poly().swap(G[i]);
siz[i]=0,Son[i]=dep[i]=lson[i]=rson[i]=rfa[i]=All[i]=Tp[i]=pos[i]=0;
}
// int siz[N],Son[N],dep[N];
// int lson[N],rson[N],rfa[N],All[N],Tp[N],pos[N];
// int tim[N],TIM;
// int mn[N],tot[N],smn[N],tag[N],a[N];
// ll sm[N];
// int n,son[N][2];
// int Lim[N],val[N];
// int siz1[N],son1[N];
// poly G[N];
// ll ans[N];
// int ffa[N];
// int fail[N];
// bool vis[N];
for (int i=1;i<=n;i++) chk(i);
++TIM;
for (int i=2;i<=n;i++)
{
int x,y;
cin>>x>>y;
son[x][y]=i;
ffa[i]=x;
dep[i]=dep[x]+1;
}
for (int i=1;i<=n;i++) cin>>val[i];
for (int i=1;i<=n;i++) cin>>Lim[i];
for (int i=n;i>=1;i--)
{
siz[i]=1;Son[i]=0;
for (int w=0;w<2;w++)
{
int u=son[i][w];
if (!u) continue;
siz[i]+=siz[u];
if (siz[u]>siz[Son[i]]) Son[i]=u;
}
}
for (int i=n;i>=1;i--)
if (!vis[i])
{
int x=i;
poly g,gg;
while (1)
{
g.push_back(x);vis[x]=1;
if (Son[ffa[x]]!=x) break;
x=ffa[x];
}
reverse(g.begin(),g.end());
gg=g;
for (int i=0;i<sz(g);i++) pos[g[i]]=i;
for (auto &u:gg)
u=siz[u]-siz[Son[u]];
for (int j=1;j<sz(gg);j++) gg[j]+=gg[j-1];
int rt=build(g,gg,0,sz(g)-1);
rfa[rt]=ffa[x];
for (auto u:g)
Tp[u]=rt;
}
queue<int>q;
q.push(1);
fail[1]=0;
for (int i=0;i<2;i++) son[0][i]=1;
while (!q.empty())
{
int u=q.front();q.pop();
for (int i=0;i<2;i++)
{
if (son[u][i])
{
fail[son[u][i]]=son[fail[u]][i];
q.push(son[u][i]);
} else son[u][i]=son[fail[u]][i];
}
}
for (int i=2;i<=n;i++)
G[fail[i]].push_back(i);
dfs(1);
dfs1(1);
for (int i=1;i<=n;i++) cout<<ans[i]<<" ";
cout<<'\n';
}
signed main()
{
IOS;
cin.tie(0);
int T=1;
cin>>T;
while (T--)
{
BellaKira();
}
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 5
Accepted
time: 0ms
memory: 42504kb
input:
5 100 1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0 9 0 10 0 11 0 12 0 13 0 14 0 15 0 16 0 17 0 18 0 19 0 20 0 21 0 22 0 23 0 24 0 25 0 26 0 27 0 28 0 29 0 30 0 31 0 32 0 33 0 34 0 35 0 36 0 37 0 38 0 39 0 40 0 41 0 42 0 43 0 44 0 45 0 46 0 47 0 48 0 49 0 50 0 51 0 52 0 53 0 54 0 55 0 56 0 57 0 58 0 59 0 60 0 61 ...
output:
898192584 1872556072 2796790614 3758907885 4721025156 5540285037 6473830830 7439177386 8387406282 9352752838 10318099394 11283445950 12283445950 13283445950 14283445950 15144832174 15985150482 16950497038 17445491372 18445491372 19445491372 20445491372 21364928322 21962113072 22881550022 23800986972...
result:
ok 500 numbers
Test #2:
score: 5
Accepted
time: 3ms
memory: 42804kb
input:
5 100 1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0 9 0 10 0 11 0 12 0 13 0 14 0 15 0 16 0 17 0 18 0 19 0 20 0 21 0 22 0 23 0 24 0 25 0 26 0 27 0 28 0 29 0 30 0 31 0 32 0 33 0 34 0 35 0 36 0 37 0 38 0 39 0 40 0 41 0 42 0 43 0 44 0 45 0 46 0 47 0 48 0 49 0 50 0 51 0 52 0 53 0 54 0 55 0 56 0 57 0 58 0 59 0 60 0 61 ...
output:
981392440 1962784880 2955924472 3949064064 4942203656 5935343248 6908906778 7908906778 8895185962 9888325554 10881465146 11874604738 12867744330 13860883922 14860883922 15860883922 16840302698 17840302698 18840302698 19517274953 20432088180 21432088180 22432088180 23318505816 24290110225 25261714634...
result:
ok 500 numbers
Test #3:
score: 5
Accepted
time: 9ms
memory: 45016kb
input:
5 2000 1 0 1 1 2 0 2 1 3 0 3 1 4 0 4 1 5 0 5 1 6 0 6 1 7 0 7 1 8 0 8 1 9 0 9 1 10 0 16 0 21 0 22 0 23 0 24 0 25 0 26 0 27 0 28 0 29 0 30 0 31 0 32 0 33 0 34 0 35 0 36 0 37 0 38 0 39 0 40 0 41 0 42 0 43 0 44 0 45 0 46 0 47 0 48 0 49 0 50 0 51 0 52 0 53 0 54 0 55 0 56 0 57 0 58 0 59 0 60 0 61 0 62 0 6...
output:
1000000000 1998400828 993283036 2997601242 1982118880 2974350138 1000000000 3995472424 1965887128 3985959244 3000000000 2956494828 2000000000 2959713978 0 4994340530 2940499173 3941189620 2944137507 0 5993208636 6992076742 7990944848 8989812954 9988681060 10988681060 11988681060 12988681060 13984153...
result:
ok 10000 numbers
Test #4:
score: 5
Accepted
time: 8ms
memory: 43040kb
input:
5 2000 1 0 1 1 2 0 2 1 3 0 3 1 4 0 4 1 5 0 5 1 6 0 6 1 7 0 7 1 8 0 8 1 9 0 9 1 10 0 16 0 21 0 22 0 23 0 24 0 25 0 26 0 27 0 28 0 29 0 30 0 31 0 32 0 33 0 34 0 35 0 36 0 37 0 38 0 39 0 40 0 41 0 42 0 43 0 44 0 45 0 46 0 47 0 48 0 49 0 50 0 51 0 52 0 53 0 54 0 55 0 56 0 57 0 58 0 59 0 60 0 61 0 62 0 6...
output:
1000000000 1989496542 1996067849 2985991461 1991714992 2960477667 2983449306 3982486380 3983429984 1969526880 1996565664 2953748358 1980701322 1994377494 3970332948 4978981299 1000000000 2954038725 4991414160 3956583228 5975476218 6971971137 7968466056 8964960975 9961455894 10957950813 11954445732 1...
result:
ok 10000 numbers
Test #5:
score: 5
Accepted
time: 8ms
memory: 45296kb
input:
5 2000 1 0 1 1 2 0 2 1 3 0 3 1 4 0 4 1 5 0 5 1 6 0 6 1 7 0 7 1 8 0 8 1 9 0 9 1 10 0 16 0 21 0 22 0 23 0 24 0 25 0 26 0 27 0 28 0 29 0 30 0 31 0 32 0 33 0 34 0 35 0 36 0 37 0 38 0 39 0 40 0 41 0 42 0 43 0 44 0 45 0 46 0 47 0 48 0 49 0 50 0 51 0 52 0 53 0 54 0 55 0 56 0 57 0 58 0 59 0 60 0 61 0 62 0 6...
output:
1000000000 1997363842 2000000000 2996045763 2954596806 1995148332 3000000000 3996045763 0 2983043281 2977715897 1970005876 1989593130 2999881107 2976355872 4993409605 0 3942019132 3999426588 2935916472 5992091526 6990773447 7990773447 8970557459 9958230246 10954121175 11950012104 12942775649 1393866...
result:
ok 10000 numbers
Test #6:
score: 5
Accepted
time: 44ms
memory: 42708kb
input:
5 10000 1 0 1 1 2 0 2 1 3 0 3 1 4 0 4 1 5 0 5 1 6 0 6 1 7 0 7 1 8 0 8 1 9 0 9 1 10 0 10 1 11 0 11 1 12 0 12 1 13 0 13 1 14 0 14 1 15 0 15 1 16 0 16 1 17 0 17 1 18 0 18 1 19 0 19 1 20 0 20 1 21 0 21 1 22 0 22 1 23 0 23 1 24 0 24 1 25 0 25 1 26 0 26 1 27 0 27 1 28 0 28 1 29 0 29 1 30 0 30 1 31 0 31 1 ...
output:
1000000000 1997525692 1996985317 2997129200 2991179348 2997161779 2996319570 3989223081 3991374635 3991946500 3992002124 3994749088 3987611669 3982661232 3992639140 4979350080 3976024017 4992360483 4985259115 3996723498 2995609011 4975872060 2981189242 4997695335 4973608855 3986790024 4974234480 399...
result:
ok 50000 numbers
Test #7:
score: 5
Accepted
time: 54ms
memory: 46724kb
input:
5 10000 1 0 1 1 2 0 2 1 3 0 3 1 4 0 4 1 5 0 5 1 6 0 6 1 7 0 7 1 8 0 8 1 9 0 9 1 10 0 10 1 11 0 11 1 12 0 12 1 13 0 13 1 14 0 14 1 15 0 15 1 16 0 16 1 17 0 17 1 18 0 18 1 19 0 19 1 20 0 20 1 21 0 21 1 22 0 22 1 23 0 23 1 24 0 24 1 25 0 25 1 26 0 26 1 27 0 27 1 28 0 28 1 29 0 29 1 30 0 30 1 31 0 31 1 ...
output:
999967682 1999743789 1999734462 2999173761 2994260277 2999967682 2996718891 3998898348 3994925097 3999296003 3999068044 3988921256 3985522278 3981187872 3991168544 4991213080 4986062038 4983561919 4989364086 4988276002 4983340123 3989911805 3982210105 4984791488 4999336155 4999838410 4992867765 4979...
result:
ok 50000 numbers
Test #8:
score: 5
Accepted
time: 45ms
memory: 46588kb
input:
5 10000 1 0 1 1 2 0 2 1 3 0 3 1 4 0 4 1 5 0 5 1 6 0 6 1 7 0 7 1 8 0 8 1 9 0 9 1 10 0 10 1 11 0 11 1 12 0 12 1 13 0 13 1 14 0 14 1 15 0 15 1 16 0 16 1 17 0 17 1 18 0 18 1 19 0 19 1 20 0 20 1 21 0 21 1 22 0 22 1 23 0 23 1 24 0 24 1 25 0 25 1 26 0 26 1 27 0 27 1 28 0 28 1 29 0 29 1 30 0 30 1 31 0 31 1 ...
output:
998876645 1997338029 1997339516 2996329925 2996629935 2997539420 2996852099 3991437240 3987402020 3992793244 3993161552 3993525624 3991071983 3992608450 3993426205 4976844461 4985337711 4973415221 4980643476 4975351325 4994383225 4984438057 4992192815 4980003495 4992314355 4994728129 3980284364 2997...
result:
ok 50000 numbers
Test #9:
score: 5
Accepted
time: 415ms
memory: 66908kb
input:
5 100000 1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0 9 0 10 0 11 0 12 0 13 0 14 0 15 0 16 0 17 0 18 0 19 0 20 0 21 0 22 0 23 0 24 0 25 0 26 0 27 0 28 0 29 0 30 0 31 0 32 0 33 0 34 0 35 0 36 0 37 0 38 0 39 0 40 0 41 0 42 0 43 0 44 0 45 0 46 0 47 0 48 0 49 0 50 0 51 0 52 0 53 0 54 0 55 0 56 0 57 0 58 0 59 0 60 0 ...
output:
999958881 1999893258 2999843477 3999772224 4999748473 5999724722 6999700971 7999700971 8999700971 9999629718 10999605967 11999582216 12999548314 13999548314 14999467815 15999440982 16999414149 17999333929 18999333929 19999307096 20999226597 21999199764 22999172931 23999146098 24999119265 25999092432...
result:
ok 500000 numbers
Test #10:
score: 5
Accepted
time: 412ms
memory: 70044kb
input:
5 100000 1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0 9 0 10 0 11 0 12 0 13 0 14 0 15 0 16 0 17 0 18 0 19 0 20 0 21 0 22 0 23 0 24 0 25 0 26 0 27 0 28 0 29 0 30 0 31 0 32 0 33 0 34 0 35 0 36 0 37 0 38 0 39 0 40 0 41 0 42 0 43 0 44 0 45 0 46 0 47 0 48 0 49 0 50 0 51 0 52 0 53 0 54 0 55 0 56 0 57 0 58 0 59 0 60 0 ...
output:
999915392 1999903890 2999903890 3999903890 4999892388 5999857882 6999808669 7999797167 8999785665 9999785665 10999762661 11999751159 12999739657 13999728155 14999716653 15999168106 16999083194 17998513012 18998440066 19998367120 20998294174 21998221228 22998148282 23998075336 24998002390 25997929444...
result:
ok 500000 numbers
Test #11:
score: 5
Accepted
time: 1647ms
memory: 50732kb
input:
5 100000 1 0 1 1 2 0 2 1 3 0 3 1 4 0 4 1 5 0 5 1 6 0 6 1 7 0 7 1 8 0 8 1 9 0 9 1 10 0 10 1 11 0 11 1 12 0 12 1 13 0 13 1 14 0 14 1 15 0 15 1 16 0 16 1 17 0 17 1 18 0 18 1 19 0 19 1 20 0 20 1 21 0 21 1 22 0 22 1 23 0 23 1 24 0 24 1 25 0 25 1 26 0 26 1 27 0 27 1 28 0 28 1 29 0 29 1 30 0 30 1 31 0 31 1...
output:
1000000000 1999851068 2000000000 2999203805 2999695590 2999589046 2999368209 3998889336 3998839612 3999702136 3999182977 3998258275 3999101959 3999285480 3998372379 4998560200 4998052058 4998439925 4998765415 4997362737 4999492650 4997430254 4997019523 4992645858 4998271828 4998163182 4998910700 499...
result:
ok 500000 numbers
Test #12:
score: 5
Accepted
time: 1663ms
memory: 50612kb
input:
5 100000 1 0 1 1 2 0 2 1 3 0 3 1 4 0 4 1 5 0 5 1 6 0 6 1 7 0 7 1 8 0 8 1 9 0 9 1 10 0 10 1 11 0 11 1 12 0 12 1 13 0 13 1 14 0 14 1 15 0 15 1 16 0 16 1 17 0 17 1 18 0 18 1 19 0 19 1 20 0 20 1 21 0 21 1 22 0 22 1 23 0 23 1 24 0 24 1 25 0 25 1 26 0 26 1 27 0 27 1 28 0 28 1 29 0 29 1 30 0 30 1 31 0 31 1...
output:
999955807 1999783719 1999858914 2999654721 2999761161 2999867421 2999583758 3999654721 3999825363 3998724964 3999081545 3998042034 3998532108 3998283824 3998977721 4999138457 4999104220 4996782381 4998076718 4995657098 4998743457 4993644957 4999294570 4998078495 4994738883 4998316980 4998756700 4997...
result:
ok 500000 numbers
Test #13:
score: 5
Accepted
time: 751ms
memory: 67324kb
input:
5 100000 1 0 1 1 2 0 2 1 3 0 3 1 4 0 4 1 5 0 5 1 6 0 6 1 7 0 7 1 8 0 8 1 9 0 9 1 10 0 10 1 11 0 11 1 12 0 12 1 13 0 13 1 14 0 14 1 15 0 15 1 16 0 16 1 17 0 17 1 18 0 18 1 19 0 19 1 20 0 20 1 21 0 21 1 22 0 22 1 23 0 23 1 24 0 24 1 25 0 25 1 26 0 26 1 27 0 27 1 28 0 28 1 29 0 29 1 30 0 30 1 31 0 31 1...
output:
1000000000 1999919815 1999989456 2999825445 3000000000 2999759445 2999231166 3999825445 3998653945 3999565408 3999294662 3998104288 3998239889 3999242245 3998951064 4998511416 4996573969 4998914341 4995646139 4997864709 4999332525 4997476075 4991805486 4999127225 4994061415 4998902001 4998249605 499...
result:
ok 500000 numbers
Test #14:
score: 5
Accepted
time: 815ms
memory: 68536kb
input:
5 100000 1 0 1 1 2 0 2 1 3 0 3 1 4 0 4 1 5 0 5 1 6 0 6 1 7 0 7 1 8 0 8 1 9 0 9 1 10 0 10 1 11 0 11 1 12 0 12 1 13 0 13 1 14 0 14 1 15 0 15 1 16 0 16 1 17 0 17 1 18 0 18 1 19 0 19 1 20 0 20 1 21 0 21 1 22 0 22 1 23 0 23 1 24 0 24 1 25 0 25 1 26 0 26 1 27 0 27 1 28 0 28 1 29 0 29 1 30 0 30 1 31 0 31 1...
output:
1000000000 1999970702 2000000000 2999502387 2999555316 2999789559 3000000000 3999187182 3999350866 3999760928 3995326552 3998352005 3999429928 3999339540 3998994520 4999092446 4999276970 4997806234 4995717095 4999217160 4998043560 4997246009 4999149545 4997628287 4999120566 4998197651 4995600942 499...
result:
ok 500000 numbers
Test #15:
score: 5
Accepted
time: 732ms
memory: 67152kb
input:
5 100000 1 0 1 1 2 0 2 1 3 0 3 1 4 0 4 1 5 0 5 1 6 0 6 1 7 0 7 1 8 0 8 1 9 0 9 1 10 0 10 1 11 0 11 1 12 0 12 1 13 0 13 1 14 0 14 1 15 0 15 1 16 0 16 1 17 0 17 1 18 0 18 1 19 0 19 1 20 0 20 1 21 0 21 1 22 0 22 1 23 0 23 1 24 0 24 1 25 0 25 1 26 0 26 1 27 0 27 1 28 0 28 1 29 0 29 1 30 0 30 1 31 0 31 1...
output:
1000000000 1999780230 1999980236 2999716198 3000000000 2999471606 2999745042 3999615947 3999448903 3999163727 3996764171 3997506611 3998492351 3999350199 3999745042 4999130761 4998491900 4997100272 4994605590 4998563634 4998305185 4998940258 4997047921 4993543009 4999901180 4997696059 4997823116 499...
result:
ok 500000 numbers
Test #16:
score: 5
Accepted
time: 818ms
memory: 66192kb
input:
5 100000 1 0 1 1 2 0 2 1 3 0 3 1 4 0 4 1 5 0 5 1 6 0 6 1 7 0 7 1 8 0 8 1 9 0 9 1 10 0 10 1 11 0 11 1 12 0 12 1 13 0 13 1 14 0 14 1 15 0 15 1 16 0 16 1 17 0 17 1 18 0 18 1 19 0 19 1 20 0 20 1 21 0 21 1 22 0 22 1 23 0 23 1 24 0 24 1 25 0 25 1 26 0 26 1 27 0 27 1 28 0 28 1 29 0 29 1 30 0 30 1 31 0 31 1...
output:
1000000000 2000000000 1999918694 2999949701 2999972992 2999395458 2999483757 3999888543 3999945984 3998263827 3999326110 3999864900 3998713848 3998062690 3998580650 4999555774 4997537243 4996384729 4996190080 4997531311 4998283072 4998202757 4999417735 4999318565 4997516912 4997474745 4997034406 499...
result:
ok 500000 numbers
Test #17:
score: 0
Time Limit Exceeded
input:
5 500000 1 0 1 1 2 0 2 1 3 0 3 1 4 0 4 1 5 0 5 1 6 0 6 1 7 0 7 1 8 0 8 1 9 0 9 1 10 0 10 1 11 0 11 1 12 0 12 1 13 0 13 1 14 0 14 1 15 0 15 1 16 0 16 1 17 0 17 1 18 0 18 1 19 0 19 1 20 0 20 1 21 0 21 1 22 0 22 1 23 0 23 1 24 0 24 1 25 0 25 1 26 0 26 1 27 0 27 1 28 0 28 1 29 0 29 1 30 0 30 1 31 0 31 1...
output:
999993507 1999933670 1999993507 2999837154 2999970122 2999855390 2999993507 3999716337 3999882718 3999659476 3999974028 3999818180 3999710157 3999735995 3999811472 4999358325 4999880810 4999837877 4999778363 4999633108 4999740015 4999518700 4999175761 4999236215 4999690187 4999697479 4999622863 4999...
result:
Test #18:
score: 0
Time Limit Exceeded
input:
5 500000 1 0 1 1 2 0 2 1 3 0 3 1 4 0 4 1 5 0 5 1 6 0 6 1 7 0 7 1 8 0 8 1 9 0 9 1 10 0 10 1 11 0 11 1 12 0 12 1 13 0 13 1 14 0 14 1 15 0 15 1 16 0 16 1 17 0 17 1 18 0 18 1 19 0 19 1 20 0 20 1 21 0 21 1 22 0 22 1 23 0 23 1 24 0 24 1 25 0 25 1 26 0 26 1 27 0 27 1 28 0 28 1 29 0 29 1 30 0 30 1 31 0 31 1...
output:
1000000000 1999947270 2000000000 2999935812 3000000000 2999968190 2999995352 3999871624 3999417305 3999778702 3999895439 3999616228 3999636313 3999973635 3999731018 4999839530 4999361419 4999174986 4999702490 4999409774 4999867500 4999868175 4999772730 4999948411 4999892030 4999275244 4999976760 499...
result:
Test #19:
score: 0
Time Limit Exceeded
input:
5 500000 1 0 1 1 2 0 2 1 3 0 3 1 4 0 4 1 5 0 5 1 6 0 6 1 7 0 7 1 8 0 8 1 9 0 9 1 10 0 10 1 11 0 11 1 12 0 12 1 13 0 13 1 14 0 14 1 15 0 15 1 16 0 16 1 17 0 17 1 18 0 18 1 19 0 19 1 20 0 20 1 21 0 21 1 22 0 22 1 23 0 23 1 24 0 24 1 25 0 25 1 26 0 26 1 27 0 27 1 28 0 28 1 29 0 29 1 30 0 30 1 31 0 31 1...
output:
999992604 1999948536 1999975318 2999907516 2999982163 2999893665 2999949665 3999815032 3999970416 3999897072 3999759146 3999800182 3999634347 3999666177 3999938278 4999815032 4999353345 4999855125 4999865106 4999145868 4999082709 4999740365 4999891690 4999471884 4999111930 4999594745 4999463028 4999...
result:
Test #20:
score: 0
Time Limit Exceeded
input:
5 500000 1 0 1 1 2 0 2 1 3 0 3 1 4 0 4 1 5 0 5 1 6 0 6 1 7 0 7 1 8 0 8 1 9 0 9 1 10 0 10 1 11 0 11 1 12 0 12 1 13 0 13 1 14 0 14 1 15 0 15 1 16 0 16 1 17 0 17 1 18 0 18 1 19 0 19 1 20 0 20 1 21 0 21 1 22 0 22 1 23 0 23 1 24 0 24 1 25 0 25 1 26 0 26 1 27 0 27 1 28 0 28 1 29 0 29 1 30 0 30 1 31 0 31 1...
output:
999992387 1999975477 1999970419 2999835172 2999945562 2999949308 2999863443 3999824884 3999956258 3999856926 3999781668 3999548394 3999732748 3999907282 3999769871 4999674241 4999716509 4999771080 4999663315 4999412332 4999383508 4999910990 4999961935 4999744426 4999684161 4999402722 4998584469 4999...