#include "Annalib.h"
#include <bits/stdc++.h>
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
using namespace std;
using namespace __gnu_pbds;
#define fi first
#define se second
#define mp make_pair
#define pb push_back
typedef long long ll;
typedef pair<int,int> ii;
typedef vector<int> vi;
typedef long double ld;
typedef tree<ii, null_type, less<ii>, rb_tree_tag, tree_order_statistics_node_update> pbds;
const ll INF = ll(4e18);
ll cost[333][333];
vi adj[333];
int n;
int par[333];
ll dist[333];
ll D[333][333];
ll D1[333][333];
void floyd()
{
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
D[i][j]=0;
if(i!=j) D[i][j]=cost[i][j];
}
}
for(int k=0;k<n;k++)
{
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
D[i][j]=min(D[i][k]+D[k][j], D[i][j]);
}
}
}
}
void floyd1()
{
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
D1[i][j]=0;
if(i!=j) D1[i][j]=cost[i][j];
}
}
for(int k=0;k<n;k++)
{
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
D1[i][j]=min(D1[i][k]+D1[k][j], D1[i][j]);
}
}
}
}
int SS[55555];
int TT[55555];
int AA[55555];
int UU[55555];
int BB[55555];
pair<vi,vi> prepcomp(int i, int j, vi V, int K)
{
//cerr<<"PRECOMP : "<<i<<' '<<j<<'\n';
//for(int v:V) cerr<<v<<' ';
//cerr<<'\n';
vi L,R;
int u1=AA[UU[i]]; int v1=BB[UU[i]];
if(j==K)
{
vector<pair<ll,ll> > vec;
for(int k:V)
{
int s=SS[k]; int t=TT[k];
ll cost = D1[s][t]-D1[s][u1]-D1[v1][t];
if(D1[s][t]>=INF) cost=INF;
//cerr<<"COST A : "<<cost<<' '<<k<<'\n';
vec.pb(mp(cost,k));
}
sort(vec.begin(),vec.end());
int c=V.size(); int pt=0;
for(;pt<vec.size();pt++)
{
int k=vec[pt].se;
//cerr<<vec[pt].fi<<' '<<k<<' '<<cost[u1][v1]<<'\n';
if(vec[pt].fi>cost[u1][v1])
{
//first point which works
if(c==V.size()) c=pt;
L.pb(k);
}
else
{
R.pb(k);
}
}
//cerr<<"CA : "<<i<<' '<<j<<' '<<c<<'\n';
int mx=int(V.size())+1;
int cnt=0;
while(mx>(1<<cnt)) cnt++;
for(int k=0;k<cnt;k++)
{
if(c&(1<<k)) Tap(1);
else Tap(0);
}
}
else
{
int u2=AA[UU[j]]; int v2=BB[UU[j]];
vector<pair<ll,ll> > vec;
for(int k:V)
{
int s=SS[k]; int t=TT[k];
ll cost = D1[v2][t]-D1[v1][t];
//cerr<<cost<<' '<<k<<'\n';
vec.pb(mp(cost,k));
}
sort(vec.begin(),vec.end());
int c=V.size(); int pt=0;
for(;pt<vec.size();pt++)
{
int k=vec[pt].se;
//cerr<<pt<<' '<<u1<<' '<<v1<<' '<<u2<<' '<<v2<<'\n';
if(vec[pt].fi>cost[u1][v1]-cost[u2][v2])
{
//first point which works
if(c==V.size()) c=pt;
L.pb(k);
}
else
{
R.pb(k);
}
}
int mx=int(V.size())+1;
int cnt=0;
while(mx>(1<<cnt)) cnt++;
for(int k=0;k<cnt;k++)
{
if(c&(1<<k)) Tap(1);
else Tap(0);
}
}
//cerr<<"END PRECOMP "<<i<<' '<<j<<'\n';
return mp(L,R);
}
vector<vi> solve(int l, int r, int K, int Q)
{
vi vec;
for(int i=0;i<Q;i++) vec.pb(i);
if(l>r) return {};
if(l==r) return {vec};
//cerr<<"SOLVE "<<l<<' '<<r<<'\n';
int mid=(l+r)>>1;
vector<vi> L = solve(l,mid,K,Q);
vector<vi> R = solve(mid+1,r,K,Q);
vector<ii> lab(Q,mp(-1,-1));
for(int i=0;i<L.size();i++)
{
for(int v:L[i])
{
lab[v].fi=l+i;
}
}
for(int i=0;i<R.size();i++)
{
for(int v:R[i])
{
lab[v].se=mid+1+i;
}
}
for(int i=0;i<Q;i++){assert(lab[i].fi>=0&&lab[i].se>=0);}
vector<int> exist[11][11];
for(int i=0;i<Q;i++)
{
exist[lab[i].fi][lab[i].se].pb(i);
}
vector<vi> ans(r-l+1);
for(int i=l;i<=mid;i++)
{
for(int j=mid+1;j<=r;j++)
{
int tmp = exist[i][j].size();
if(tmp>0)
{
pair<vi,vi> pairv = prepcomp(i, j, exist[i][j], K);
for(int x:pairv.fi) ans[i-l].pb(x);
for(int x:pairv.se) ans[j-l].pb(x);
}
}
}
return ans;
}
void Anna(int N, int M, int A[], int B[], long long C[], int Q, int S[], int T[], int K, int U[])
{
n=N;
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
cost[i][j]=INF;
}
}
for(int i=0;i<Q;i++)
{
SS[i]=S[i]; TT[i]=T[i];
}
for(int i=0;i<M;i++)
{
AA[i]=A[i]; BB[i]=B[i];
adj[A[i]].pb(B[i]);
cost[A[i]][B[i]] = C[i];
}
//vi best;
floyd();
vector<ll> tempor(K,INF);
for(int i=0;i<K;i++)
{
UU[i]=U[i];
swap(tempor[i], cost[A[U[i]]][B[U[i]]]);
}
floyd1();
for(int i=0;i<K;i++)
{
swap(tempor[i], cost[A[U[i]]][B[U[i]]]);
}
/*
for(int j=0;j<Q;j++)
{
best.pb(K);
//dijkstra(S[j]);
int u=A[U[0]];
ll cur=D[S[j]][u]; ll bestd=D[S[j]][T[j]];
for(int i=0;i<K;i++)
{
int v=B[U[i]]; //dijkstra(v);
if(cur+cost[u][v]+D[v][T[j]]==bestd)
{
best[int(best.size())-1]=i; break;
}
}
}
const int MX = 60;
while(int(best.size())<MX) best.pb(0);
for(int i=0;i<MX;i+=3)
{
int b2 = best[i+2]; int b1 = best[i+1]; int b0 = best[i];
int comb = b2*36+b1*6+b0;
for(int j=0;j<8;j++)
{
Tap((comb&(1<<j))?1:0);
}
}
*/
vector<vi> res = solve(0,K,K,Q);
/*
vi best(Q);
for(int i=0;i<=K;i++)
{
for(int v:res[i])
{
best[v]=i;
}
}
for(int i=0;i<Q;i++)
{
cerr<<"BEST A "<<i<<' '<<best[i]<<'\n';
}
*/
}
#include "Brunolib.h"
#include <bits/stdc++.h>
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
using namespace std;
using namespace __gnu_pbds;
#define fi first
#define se second
#define mp make_pair
#define pb push_back
typedef long long ll;
typedef pair<ll,ll> ii;
typedef vector<int> vi;
typedef long double ld;
typedef tree<ii, null_type, less<ii>, rb_tree_tag, tree_order_statistics_node_update> pbds;
const ll INF = ll(4e18);
ll cost2[333][333];
vector<ii> adj2[333];
int nn;
ii par2[333];
ll dist2[333];
ll D2[333][333];
void dijkstra2(int s)
{
//cerr<<"DIJK "<<s<<'\n';
for(int i=0;i<nn;i++)
{
dist2[i]=INF; par2[i]=mp(-1,-1);
}
priority_queue<ii,vector<ii>,greater<ii> > pq;
dist2[s]=0; pq.push(mp(0,s));
while(!pq.empty())
{
ll d=pq.top().fi; int u=pq.top().se; pq.pop();
for(ii X:adj2[u])
{
int v=X.fi; int lab=X.se;
ll c = cost2[u][v];
if(d+c<dist2[v])
{
//cerr<<"PAR "<<v<<" = "<<u<<'\n';
par2[v]=mp(u,lab); dist2[v]=d+c; pq.push(mp(dist2[v],v));
}
}
}
}
void floyd2()
{
for(int i=0;i<nn;i++)
{
for(int j=0;j<nn;j++)
{
D2[i][j]=0;
if(i!=j) D2[i][j]=cost2[i][j];
}
}
for(int k=0;k<nn;k++)
{
for(int i=0;i<nn;i++)
{
for(int j=0;j<nn;j++)
{
D2[i][j]=min(D2[i][k]+D2[k][j], D2[i][j]);
}
}
}
}
void getpath(int s, int u)
{
vi path;
//cerr<<"GET PATH "<<s<<' '<<u<<'\n';
int cur = s;
while(cur!=u)
{
for(ii x:adj2[cur])
{
int v=x.fi; int lab=x.se;
if(D2[s][cur]+cost2[cur][v]+D2[v][u]==D2[s][u])
{
Answer(lab); cur=v; break;
}
}
}
}
int SSS[555];
int TTT[55555];
int AAA[55555];
int UUU[55555];
int BBB[55555];
int ZZ[55555];
int PTR;
pair<vi,vi> prepcomp2(int i, int j, vi V, int K)
{
//cerr<<"PRECOMP 2 : "<<i<<' '<<j<<'\n';
//for(int v:V) cerr<<v<<' ';
//cerr<<'\n';
vi L,R;
int u1=AAA[UUU[i]]; int v1=BBB[UUU[i]];
if(j==K)
{
vector<pair<ll,ll> > vec;
for(int k:V)
{
int s=SSS[k]; int t=TTT[k];
ll cost = D2[s][t]-D2[s][u1]-D2[v1][t];
if(D2[s][t]>=INF) cost=INF;
vec.pb(mp(cost,k));
//cerr<<"COST B : "<<cost<<' '<<k<<'\n';
}
sort(vec.begin(),vec.end());
int c=0;int pt=0;
int mx=int(V.size())+1;
int cnt=0;
while(mx>(1<<cnt)) cnt++;
for(int k=0;k<cnt;k++)
{
if(ZZ[PTR++]) c^=(1<<k);
}
for(;pt<vec.size();pt++)
{
int k=vec[pt].se;
if(pt>=c)
{
L.pb(k);
}
else
{
R.pb(k);
}
}
//cerr<<i<<' '<<j<<' '<<c<<'\n';
}
else
{
int u2=AAA[UUU[j]]; int v2=BBB[UUU[j]];
vector<pair<ll,ll> > vec;
for(int k:V)
{
int s=SSS[k]; int t=TTT[k];
ll cost = D2[v2][t]-D2[v1][t];
//cerr<<cost<<' '<<k<<'\n';
vec.pb(mp(cost,k));
}
sort(vec.begin(),vec.end());
int c=0;int pt=0;
int mx=int(V.size())+1;
int cnt=0;
while(mx>(1<<cnt)) cnt++;
for(int k=0;k<cnt;k++)
{
if(ZZ[PTR++]) c^=(1<<k);
}
for(;pt<vec.size();pt++)
{
int k=vec[pt].se;
if(pt>=c)
{
L.pb(k);
}
else
{
R.pb(k);
}
}
//cerr<<i<<' '<<j<<' '<<c<<'\n';
}
return mp(L,R);
}
vector<vi> solve2(int l, int r, int K, int Q)
{
vi vec;
for(int i=0;i<Q;i++) vec.pb(i);
if(l>r) return {};
if(l==r) return {vec};
int mid=(l+r)>>1;
vector<vi> L = solve2(l,mid,K,Q);
vector<vi> R = solve2(mid+1,r,K,Q);
vector<ii> lab(Q,mp(-1,-1));
for(int i=0;i<L.size();i++)
{
for(int v:L[i])
{
lab[v].fi=l+i;
}
}
for(int i=0;i<R.size();i++)
{
for(int v:R[i])
{
lab[v].se=mid+1+i;
}
}
for(int i=0;i<Q;i++){assert(lab[i].fi>=0&&lab[i].se>=0);}
vector<int> exist[11][11];
for(int i=0;i<Q;i++)
{
exist[lab[i].fi][lab[i].se].pb(i);
}
vector<vi> ans(r-l+1);
for(int i=l;i<=mid;i++)
{
for(int j=mid+1;j<=r;j++)
{
int tmp = exist[i][j].size();
//cerr<<i<<' '<<j<<' '<<tmp<<'\n';
if(tmp>0)
{
pair<vi,vi> pairv = prepcomp2(i, j, exist[i][j], K);
for(int x:pairv.fi) ans[i-l].pb(x);
for(int x:pairv.se) ans[j-l].pb(x);
}
}
}
return ans;
}
//int dp[111][10][10];
void Bruno(int N, int M, int A[], int B[], long long C[], int Q, int S[], int T[], int K, int U[], int L, int X[])
{
for(int i=0;i<L;i++) ZZ[i]=X[i];
PTR=0;
nn=N;
for(int i=0;i<nn;i++)
{
for(int j=0;j<nn;j++)
{
cost2[i][j]=INF;
}
}
for(int i=0;i<Q;i++)
{
SSS[i]=S[i]; TTT[i]=T[i];
}
for(int i=0;i<M;i++)
{
AAA[i]=A[i]; BBB[i]=B[i];
adj2[A[i]].pb(mp(B[i],i));
if(C[i]!=-1) cost2[A[i]][B[i]] = C[i];
}
for(int i=0;i<K;i++)
{
UUU[i]=U[i];
}
vector<int> best(Q);
/*
for(int i=0;i<L;i+=8)
{
int cur=i; int as=0;
for(int j=0;j<8;j++)
{
if(X[cur]) as+=(1<<j);
cur++;
}
best.pb(as%6);
as/=6;
best.pb(as%6);
as/=6;
best.pb(as%6);
}
*/
int ptr=0;
floyd2();
/*
for(int i=0;i<=K;i++)
{
int u1=A[U[i]]; int v1=B[U[i]];
for(int j=i+1;j<=K;j++)
{
if(j==K)
{
vector<pair<ll,ll> > vec;
for(int k=0;k<Q;k++)
{
int s=S[k]; int t=T[k];
ll cost = D2[s][t]-D2[s][u1]-D2[v1][t];
if(D2[s][t]>=INF) cost=INF;
vec.pb(mp(cost,k));
}
sort(vec.begin(),vec.end());
int c=0;
for(int k=0;k<6;k++)
{
if(X[ptr++]) c^=(1<<k);
}
for(int k=0;k<Q;k++)
{
if(k>=c)
{
dp[vec[k].se][i][j]=1; //i better
}
else
{
dp[vec[k].se][i][j]=0; //j better
}
}
}
else
{
int u2=A[U[j]]; int v2=B[U[j]];
vector<pair<ll,ll> > vec;
for(int k=0;k<Q;k++)
{
int s=S[k]; int t=T[k];
ll cost = D2[v2][t]-D2[v1][t];
vec.pb(mp(cost,k));
}
sort(vec.begin(),vec.end());
int c=0;
for(int k=0;k<6;k++)
{
if(X[ptr++]) c^=(1<<k);
}
for(int k=0;k<Q;k++)
{
if(k>=c)
{
dp[vec[k].se][i][j]=1; //i better
}
else
{
dp[vec[k].se][i][j]=0; //j better
}
}
}
}
}
for(int i=0;i<Q;i++) //find best for each i
{
int cur=0;
for(int j=0;j<=K;j++)
{
if(j!=cur) continue;
for(int k=j+1;k<=K;k++)
{
if(!dp[i][j][k])
{
cur=k; break;
}
}
}
best[i]=cur;
}
*/
vector<vi> res = solve2(0,K,K,Q);
for(int i=0;i<=K;i++)
{
for(int v:res[i])
{
best[v]=i;
}
}
/*
for(int i=0;i<Q;i++)
{
cerr<<"BEST B "<<i<<' '<<best[i]<<'\n';
}
*/
for(int i=0;i<Q;i++)
{
int s=S[i]; int e=T[i];
if(best[i]==K)
{
getpath(s,e);
Answer(-1);
}
else
{
int u = A[U[best[i]]]; int v = B[U[best[i]]];
//cerr<<s<<' '<<e<<' '<<"U V : "<<U[best[i]]<<' '<<u<<' '<<v<<'\n';
getpath(s,u);
Answer(U[best[i]]);
getpath(v,e);
Answer(-1);
}
}
}
Compilation message
Anna.cpp: In function 'std::pair<std::vector<int>, std::vector<int> > prepcomp(int, int, vi, int)':
Anna.cpp:100:10: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(;pt<vec.size();pt++)
~~^~~~~~~~~~~
Anna.cpp:107:9: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if(c==V.size()) c=pt;
~^~~~~~~~~~
Anna.cpp:131:8: warning: unused variable 's' [-Wunused-variable]
int s=SS[k]; int t=TT[k];
^
Anna.cpp:138:10: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(;pt<vec.size();pt++)
~~^~~~~~~~~~~
Anna.cpp:145:9: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if(c==V.size()) c=pt;
~^~~~~~~~~~
Anna.cpp: In function 'std::vector<std::vector<int> > solve(int, int, int, int)':
Anna.cpp:177:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(int i=0;i<L.size();i++)
~^~~~~~~~~
Anna.cpp:184:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(int i=0;i<R.size();i++)
~^~~~~~~~~
Bruno.cpp: In function 'std::pair<std::vector<int>, std::vector<int> > prepcomp2(int, int, vi, int)':
Bruno.cpp:128:10: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(;pt<vec.size();pt++)
~~^~~~~~~~~~~
Bruno.cpp:148:8: warning: unused variable 's' [-Wunused-variable]
int s=SSS[k]; int t=TTT[k];
^
Bruno.cpp:162:10: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(;pt<vec.size();pt++)
~~^~~~~~~~~~~
Bruno.cpp:144:7: warning: unused variable 'u2' [-Wunused-variable]
int u2=AAA[UUU[j]]; int v2=BBB[UUU[j]];
^~
Bruno.cpp: In function 'std::vector<std::vector<int> > solve2(int, int, int, int)':
Bruno.cpp:190:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(int i=0;i<L.size();i++)
~^~~~~~~~~
Bruno.cpp:197:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(int i=0;i<R.size();i++)
~^~~~~~~~~
Bruno.cpp: In function 'void Bruno(int, int, int*, int*, long long int*, int, int*, int*, int, int*, int, int*)':
Bruno.cpp:273:6: warning: unused variable 'ptr' [-Wunused-variable]
int ptr=0;
^~~
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
139 ms |
9456 KB |
Output is correct - L = 28 |
2 |
Correct |
141 ms |
9640 KB |
Output is correct - L = 25 |
3 |
Correct |
135 ms |
9640 KB |
Output is correct - L = 23 |
4 |
Correct |
128 ms |
9640 KB |
Output is correct - L = 26 |
5 |
Correct |
122 ms |
9808 KB |
Output is correct - L = 25 |
6 |
Correct |
142 ms |
9888 KB |
Output is correct - L = 27 |
7 |
Correct |
147 ms |
10032 KB |
Output is correct - L = 28 |
8 |
Correct |
161 ms |
10096 KB |
Output is correct - L = 20 |
9 |
Correct |
154 ms |
10312 KB |
Output is correct - L = 20 |
10 |
Correct |
151 ms |
10784 KB |
Output is correct - L = 20 |
11 |
Correct |
146 ms |
10784 KB |
Output is correct - L = 5 |
12 |
Correct |
303 ms |
25620 KB |
Output is correct - L = 20 |
13 |
Correct |
149 ms |
26784 KB |
Output is correct - L = 27 |
14 |
Correct |
145 ms |
26784 KB |
Output is correct - L = 1 |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
129 ms |
26784 KB |
Output is correct - L = 53 |
2 |
Correct |
132 ms |
26784 KB |
Output is correct - L = 57 |
3 |
Correct |
155 ms |
26784 KB |
Output is correct - L = 47 |
4 |
Correct |
125 ms |
26784 KB |
Output is correct - L = 48 |
5 |
Correct |
137 ms |
26784 KB |
Output is correct - L = 58 |
6 |
Correct |
151 ms |
26784 KB |
Output is correct - L = 53 |
7 |
Correct |
146 ms |
26784 KB |
Output is correct - L = 36 |
8 |
Correct |
132 ms |
26784 KB |
Output is correct - L = 47 |
9 |
Correct |
141 ms |
26784 KB |
Output is correct - L = 61 |
10 |
Correct |
157 ms |
26784 KB |
Output is correct - L = 64 |
11 |
Correct |
152 ms |
26784 KB |
Output is correct - L = 62 |
12 |
Correct |
135 ms |
26784 KB |
Output is correct - L = 47 |
13 |
Correct |
272 ms |
31016 KB |
Output is correct - L = 30 |
14 |
Correct |
136 ms |
32240 KB |
Output is correct - L = 57 |
15 |
Correct |
146 ms |
32240 KB |
Output is correct - L = 41 |
16 |
Correct |
136 ms |
32240 KB |
Output is correct - L = 35 |
17 |
Correct |
150 ms |
32240 KB |
Output is correct - L = 36 |
18 |
Correct |
178 ms |
32240 KB |
Output is correct - L = 40 |
19 |
Correct |
133 ms |
32240 KB |
Output is correct - L = 43 |
20 |
Correct |
160 ms |
32240 KB |
Output is correct - L = 44 |
21 |
Correct |
151 ms |
32240 KB |
Output is correct - L = 35 |
22 |
Correct |
133 ms |
32240 KB |
Output is correct - L = 63 |
23 |
Correct |
177 ms |
32240 KB |
Output is correct - L = 64 |
24 |
Correct |
134 ms |
32240 KB |
Output is correct - L = 63 |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
129 ms |
32240 KB |
Output is correct - L = 53 |
2 |
Correct |
136 ms |
32240 KB |
Output is correct - L = 57 |
3 |
Correct |
136 ms |
32240 KB |
Output is correct - L = 47 |
4 |
Correct |
132 ms |
32240 KB |
Output is correct - L = 48 |
5 |
Correct |
157 ms |
32240 KB |
Output is correct - L = 58 |
6 |
Correct |
146 ms |
32240 KB |
Output is correct - L = 53 |
7 |
Correct |
168 ms |
32240 KB |
Output is correct - L = 36 |
8 |
Correct |
144 ms |
32240 KB |
Output is correct - L = 47 |
9 |
Correct |
150 ms |
32240 KB |
Output is correct - L = 61 |
10 |
Correct |
143 ms |
32240 KB |
Output is correct - L = 64 |
11 |
Correct |
177 ms |
32240 KB |
Output is correct - L = 62 |
12 |
Correct |
138 ms |
32240 KB |
Output is correct - L = 47 |
13 |
Correct |
281 ms |
37676 KB |
Output is correct - L = 30 |
14 |
Correct |
135 ms |
38984 KB |
Output is correct - L = 57 |
15 |
Correct |
129 ms |
38984 KB |
Output is correct - L = 41 |
16 |
Correct |
150 ms |
38984 KB |
Output is correct - L = 35 |
17 |
Correct |
149 ms |
38984 KB |
Output is correct - L = 36 |
18 |
Correct |
159 ms |
38984 KB |
Output is correct - L = 40 |
19 |
Correct |
143 ms |
38984 KB |
Output is correct - L = 43 |
20 |
Correct |
163 ms |
38984 KB |
Output is correct - L = 44 |
21 |
Correct |
141 ms |
38984 KB |
Output is correct - L = 35 |
22 |
Correct |
157 ms |
38984 KB |
Output is correct - L = 63 |
23 |
Correct |
149 ms |
38984 KB |
Output is correct - L = 64 |
24 |
Correct |
136 ms |
38984 KB |
Output is correct - L = 63 |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
130 ms |
38984 KB |
Output is correct - L = 53 |
2 |
Correct |
129 ms |
38984 KB |
Output is correct - L = 57 |
3 |
Correct |
144 ms |
38984 KB |
Output is correct - L = 47 |
4 |
Correct |
148 ms |
38984 KB |
Output is correct - L = 48 |
5 |
Correct |
157 ms |
38984 KB |
Output is correct - L = 58 |
6 |
Correct |
152 ms |
38984 KB |
Output is correct - L = 53 |
7 |
Correct |
150 ms |
38984 KB |
Output is correct - L = 36 |
8 |
Correct |
149 ms |
38984 KB |
Output is correct - L = 47 |
9 |
Correct |
150 ms |
38984 KB |
Output is correct - L = 61 |
10 |
Correct |
150 ms |
38984 KB |
Output is correct - L = 64 |
11 |
Correct |
166 ms |
38984 KB |
Output is correct - L = 62 |
12 |
Correct |
165 ms |
38984 KB |
Output is correct - L = 47 |
13 |
Correct |
325 ms |
44624 KB |
Output is correct - L = 30 |
14 |
Correct |
133 ms |
45736 KB |
Output is correct - L = 57 |
15 |
Correct |
130 ms |
45736 KB |
Output is correct - L = 41 |
16 |
Correct |
144 ms |
45736 KB |
Output is correct - L = 35 |
17 |
Correct |
144 ms |
45736 KB |
Output is correct - L = 36 |
18 |
Correct |
160 ms |
45736 KB |
Output is correct - L = 40 |
19 |
Correct |
147 ms |
45736 KB |
Output is correct - L = 43 |
20 |
Correct |
151 ms |
45736 KB |
Output is correct - L = 44 |
21 |
Correct |
153 ms |
45736 KB |
Output is correct - L = 35 |
22 |
Correct |
173 ms |
45736 KB |
Output is correct - L = 63 |
23 |
Correct |
152 ms |
45736 KB |
Output is correct - L = 64 |
24 |
Correct |
147 ms |
45736 KB |
Output is correct - L = 63 |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
147 ms |
45736 KB |
Output is correct - L = 53 |
2 |
Correct |
117 ms |
45736 KB |
Output is correct - L = 57 |
3 |
Correct |
150 ms |
45736 KB |
Output is correct - L = 47 |
4 |
Correct |
123 ms |
45736 KB |
Output is correct - L = 48 |
5 |
Correct |
135 ms |
45736 KB |
Output is correct - L = 58 |
6 |
Correct |
127 ms |
45736 KB |
Output is correct - L = 53 |
7 |
Correct |
145 ms |
45736 KB |
Output is correct - L = 36 |
8 |
Correct |
161 ms |
45736 KB |
Output is correct - L = 47 |
9 |
Correct |
141 ms |
45736 KB |
Output is correct - L = 61 |
10 |
Correct |
131 ms |
45736 KB |
Output is correct - L = 64 |
11 |
Correct |
121 ms |
45736 KB |
Output is correct - L = 62 |
12 |
Correct |
123 ms |
45736 KB |
Output is correct - L = 47 |
13 |
Correct |
254 ms |
51392 KB |
Output is correct - L = 30 |
14 |
Correct |
136 ms |
52544 KB |
Output is correct - L = 57 |
15 |
Correct |
130 ms |
52544 KB |
Output is correct - L = 41 |
16 |
Correct |
156 ms |
52544 KB |
Output is correct - L = 35 |
17 |
Correct |
145 ms |
52544 KB |
Output is correct - L = 36 |
18 |
Correct |
139 ms |
52544 KB |
Output is correct - L = 40 |
19 |
Correct |
135 ms |
52544 KB |
Output is correct - L = 43 |
20 |
Correct |
187 ms |
52544 KB |
Output is correct - L = 44 |
21 |
Correct |
134 ms |
52544 KB |
Output is correct - L = 35 |
22 |
Correct |
120 ms |
52544 KB |
Output is correct - L = 63 |
23 |
Correct |
131 ms |
52544 KB |
Output is correct - L = 64 |
24 |
Correct |
134 ms |
52544 KB |
Output is correct - L = 63 |