QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#887985#4051. 学术社区Flamire100 ✓800ms33956kbC++175.3kb2025-02-07 21:13:372025-02-07 21:13:39

Judging History

This is the latest submission verdict.

  • [2025-02-07 21:13:39]
  • Judged
  • Verdict: 100
  • Time: 800ms
  • Memory: 33956kb
  • [2025-02-07 21:13:37]
  • Submitted

answer

#include <bits/stdc++.h>
#define N 100011
#define pii pair<int,int>
#define s1 first
#define s2 second
using namespace std;
int n,m,T;
struct msg{int a,b,typ,id;}a[N];
map<string,int> mp;
int pvt[N];
int nxt[N],prv[N];
multiset<msg> st;
inline bool operator<(msg a,msg b)
{
	if(a.a!=b.a)return a.a<b.a;
	if(a.b!=b.b)return a.b<b.b;
	return a.typ<b.typ;
}
struct edge{int v,w,next;edge(){}edge(int _v,int _w,int _next){v=_v;w=_w;next=_next;}}e[N*20];int head[N*5],sz;
void insert(int u,int v,int w,int w2=0){e[++sz]=edge(v,w,head[u]);head[u]=sz;e[++sz]=edge(u,w2,head[v]);head[v]=sz;}
int s,t,dis[N*5],cur[N*5];
bool bfs()
{
	for(int i=s;i<=t;++i)dis[i]=-1;
	static queue<int> q;
	while(!q.empty())q.pop();
	q.push(s);dis[s]=0;
	while(!q.empty())
	{
		int p=q.front();q.pop();if(p==t)break;
		for(int i=head[p];~i;i=e[i].next)if(e[i].w&&!~dis[e[i].v])dis[e[i].v]=dis[p]+1,q.push(e[i].v);
	}
	return ~dis[t];
}
int dfs(int u,int fl)
{//printf("dfs(u:%d,fl:%d)\n",u,fl);
	if(u==t||!fl)return fl;
	int ans=0;
	for(int i=cur[u];~i;i=e[i].next)
	{
		cur[u]=i;
		if(e[i].w&&dis[e[i].v]==dis[u]+1)
		{
			int res=dfs(e[i].v,min(e[i].w,fl));
			fl-=res;ans+=res;e[i].w-=res;e[i^1].w+=res;if(!fl)break;
		}
	}
	return ans;
}
int dinic(){int ans=0;while(bfs()){for(int i=s;i<=t;++i)cur[i]=head[i];ans+=dfs(s,1e9);}return ans;}
mt19937 rnd(801);
int to[N],in[N];
void dfsW(int u,int c1,int c2)
{//printf("dfsW(u:%d,c1:%d,c2:%d)\n",u,c1,c2);
	if(u==t){to[c1]=c2-m;++in[c2-m];return;}
	for(int &i=cur[u];~i;i=e[i].next)if(!(i&1)&&!e[i].w)
	{
		if(1<=u&&u<=m)c1=u;
		if(m+1<=u&&u<=m+m)c2=u;
		dfsW(e[i].v,c1,c2);
		e[i].w=1;e[i^1].w=0;
		return;
	}
}
int L[N],R[N];
int getL(int a){return L[a]==a?a:L[a]=getL(L[a]);}
int getR(int a){return R[a]==a?a:R[a]=getR(R[a]);}
void link(int x,int y)
{//printf("link(%d->%d)\n",x,y);
	nxt[getR(x)]=getL(y);prv[getL(y)]=getR(x);
	L[getL(y)]=getL(x);R[getR(x)]=getR(y);
}
int main()
{
	scanf("%d",&T);while(T--)
	{
		scanf("%d%d",&n,&m);mp.clear();
		for(int i=1;i<=n;++i)
		{
			static char ss[111];
			scanf("%s",ss+1);
			mp[ss+1]=i;
		}
		for(int i=1;i<=m;++i)
		{
			static char s1[111],s2[111],s3[111];
			scanf("%s%s%s",s1,s2,s3);
			auto it=mp.find(s2);int id1=mp[s1];
			if(it!=mp.end()&&string(s3)=="louxia")a[i]=msg({id1,it->s2,0,i});
			else if(it!=mp.end()&&string(s3)=="loushang")a[i]=msg({id1,it->s2,1,i});
			else a[i]=msg({id1,0,2,i}),pvt[id1]=i;
		}
		// for(int i=1;i<=m;++i)printf("{a:%d,b:%d,typ:%d,id:%d}\n",a[i].a,a[i].b,a[i].typ,a[i].id);
		for(int i=1;i<=m;++i)nxt[i]=prv[i]=-1;
		st.clear();
		int ans=0;
		for(int i=1;i<=m;++i)L[i]=R[i]=i;
		for(int i=1;i<=m;++i)if(a[i].typ!=2)
		{
			auto it=st.find({a[i].b,a[i].a,a[i].typ^1,0});
			if(it!=st.end())
			{
				msg x=*it;
				st.erase(it);
				if(x.typ==0)link(i,x.id);
				else link(x.id,i);
				// printf("pair %d and %d\n",x.id,i);
				ans+=2;
			}
			else st.insert(a[i]);
		}
		s=0;t=2*m+n+n+1;
		for(int i=s;i<=t;++i)head[i]=-1;sz=-1;
		for(int i=1;i<=m;++i)
		{
			insert(s,i,1);insert(i+m,t,1);
			if(!~nxt[i]&&a[i].typ==1)insert(i,m+m+a[i].b,1);
			if(!~prv[i])insert(m+m+a[i].a,i+m,1);
			if(!~nxt[i])insert(i,m+m+n+a[i].a,1);
			if(!~prv[i]&&a[i].typ==0)insert(m+m+n+a[i].b,i+m,1);
		}
		int tt=dinic();
		printf("%d\n",tt+ans);
		for(int i=s;i<=t;++i)cur[i]=head[i];
		for(int i=1;i<=m;++i)to[i]=-1,in[i]=0;
		for(int _=1;_<=tt;++_)dfsW(s,0,0);
		// printf("to:");for(int i=1;i<=m;++i)printf("%d ",to[i]);putchar(10);
		// printf("in:");for(int i=1;i<=m;++i)printf("%d ",in[i]);putchar(10);
		static vector<vector<int>> pth;
		pth.clear();
		for(int i=1;i<=m;++i)if(!in[i])
		{
			int x=i;
			pth.push_back({});
			while(~to[x])
			{
				pth.back().push_back(x);
				int y=to[x];//link(x,y);
				to[x]=-1;--in[y];x=y;
			}
			pth.back().push_back(x);
		}
		// printf("prv:");for(int i=1;i<=m;++i)printf("%d ",prv[i]);putchar(10);
		// printf("nxt:");for(int i=1;i<=m;++i)printf("%d ",nxt[i]);putchar(10);
		for(int i=1;i<=m;++i)if(in[i])
		{
			static vector<int> cyc;
			int x=i;
			cyc.clear();
			while(~to[x])
			{
				cyc.push_back(x);
				int y=to[x];to[x]=-1;--in[y];x=y;
			}
			if(a[cyc[0]].typ==1)
			{
				for(int i=0;i+1<cyc.size();++i)link(cyc[i],cyc[i+1]);
				link(cyc.back(),pvt[a[cyc[0]].a]);
			}
			else
			{
				for(int i=0;i+1<cyc.size();++i)link(cyc[i],cyc[i+1]);
				link(pvt[a[cyc.back()].a],cyc[0]);
			}
		}
		for(auto &V:pth)
		{
			// printf("pth:");for(int x:V)printf("%d ",x);putchar(10);
			for(int i=0;i+1<V.size();++i)link(V[i],V[i+1]);
		}
		// printf("prv:");for(int i=1;i<=m;++i)printf("%d ",prv[i]);putchar(10);
		// printf("nxt:");for(int i=1;i<=m;++i)printf("%d ",nxt[i]);putchar(10);
		static vector<int> vres;
		vres.clear();
		for(int i=1;i<=m;++i)if(!~prv[i])
		{
			int x=i;
			while(~x)vres.push_back(x),x=nxt[x];
		}
		for(int x:vres)printf("%d ",x);
		putchar(10);
		assert(vres.size()==m);
		int cc=0;
		for(int i=0;i<vres.size();++i)
		{
			int u=vres[i];
			if(a[u].typ==1)
			{
				if(i+1<vres.size()&&a[vres[i+1]].a==a[u].b)++cc;
			}
			else if(a[u].typ==0)
			{
				if(i&&a[vres[i-1]].a==a[u].b)++cc;
			}
			// printf("i:%d cc:%d\n",i,cc);
		}
		assert(cc==tt+ans);
		sort(vres.begin(),vres.end());
		for(int i=1;i<vres.size();++i)assert(vres[i]!=vres[i-1]);
	}
	fclose(stdin);fclose(stdout);return 0;
}

詳細信息


Pretests


Final Tests

Test #1:

score: 4
Accepted
time: 0ms
memory: 12128kb

input:

5
7 10
A
B
C
D
E
F
G
A A A
B B B
C C C
D D D
E E E
F F F
G G G
A B loushang
C B loushang
G B loushang
3 10
A
B
C
A A A
B B B
C C C
A B loushang
C B loushang
B A louxia
B A louxia
B C louxia
B C louxia
A C loushang
3 10
A
B
C
A A A
B B B
C C C
A B loushang
A B loushang
B C louxia
B C louxia
A C louxi...

output:

1
1 3 4 5 6 7 8 9 10 2 
7
1 7 2 3 9 4 6 10 5 8 
4
1 2 4 6 5 7 8 9 3 10 
2
1 3 4 5 6 7 8 2 10 9 
9
2 7 3 8 4 9 5 10 6 1 

result:

ok Correct.

Test #2:

score: 4
Accepted
time: 0ms
memory: 11928kb

input:

10
4 16
A
B
C
D
A abcdefghijkl ABCDEFGHIJKL
B abcdefghijkl ABCDEFGHIJKL
C abcdefghijkl ABCDEFGHIJKL
D abcdefghijkl ABCDEFGHIJKL
C D loushang
C B louxia
B C loushang
D A louxia
B D louxia
A A louxia
D A louxia
C D loushang
D C loushang
B A louxia
B B loushang
A A louxia
4 16
A
B
C
D
A abcdefghijkl AB...

output:

10
1 16 10 14 4 5 11 9 7 6 8 12 13 3 15 2 
12
2 6 13 9 4 14 5 8 10 11 12 1 7 16 15 3 
9
1 3 8 6 9 12 14 13 4 10 5 15 11 7 16 2 
9
2 15 3 4 6 8 7 10 12 1 13 11 14 16 9 5 
7
1 2 4 5 6 7 9 11 14 12 3 15 13 16 8 10 
9
1 15 2 3 4 5 8 10 13 12 7 11 14 9 6 16 
11
2 15 3 13 12 4 7 9 5 14 16 10 1 8 11 6 
9
2...

result:

ok Correct.

Test #3:

score: 4
Accepted
time: 13ms
memory: 12388kb

input:

30
32 153
JpwBq..HDsu
ThevfUaiXaim
rPzLFrkzS!x?
bId_HMvquumA
qIfydwrvFtUF
MEWFHdwhdv
lhPN?!NqYwM
glDverWioFj
XQrJZ?atrx
hpmKvNwWSyhm
!KyWsTyVYf
wbhBWyPFh.N
PSsASTqBzE
mLCSCCLz.O
t.mbBELmCr
r.I!!?VCwnJQ
I?u!__ObGu
?_WyipVJj_c
cLDIkTYgonB
RUklAjWZ!.om
WRXWhpWD.g
JNqhVkbJ_g
HxpqMsUj!XOV
WvkzijbZb!D
!wy...

output:

121
1 9 27 24 57 17 43 101 12 107 124 51 90 115 122 110 116 144 150 114 143 95 100 71 61 15 19 20 23 30 93 134 108 109 132 141 137 81 86 41 29 16 33 65 52 37 42 44 125 4 26 39 45 49 50 76 10 28 40 32 56 67 103 99 70 85 47 54 7 11 62 66 58 25 69 82 105 106 48 68 112 73 63 38 5 22 35 34 18 14 72 78 64...

result:

ok Correct.

Test #4:

score: 4
Accepted
time: 12ms
memory: 16348kb

input:

30
32 165
cOrq.aXFlS
hhUwqwEhbR
STbfehzpg_
.pEbZEBQ!CJ
!ZrjAUDsFKIV
DxAYVmTQHlG
mdehhvitnCx
Znc.cGD.dy
.rgMqdJwB.H
oDxVlF?.wxW
bxF_qUlnMs
dvhzBd?WJL
hbDuYRbJQpHF
YJfupPIUzJtk
mUR!I?Exxr
csFCwfWNkd_s
dcAMbqtmnYDA
FyE.mDdgzC
uYpIamtkCVR
dPQgKFgYZP
tTl!ExnlcY
oVNrqKw?.A
gigkZHizGX
dSoVEtHSEhWw
QhoSFhcs...

output:

133
6 13 18 21 75 109 144 124 19 23 78 34 38 35 94 33 39 26 157 136 58 28 9 43 7 32 53 8 2 52 4 61 66 30 69 125 56 54 16 24 5 1 25 50 72 143 149 93 79 45 82 86 137 70 74 87 126 153 150 47 51 14 31 105 138 84 123 99 130 140 83 89 129 90 80 96 110 134 55 91 3 40 22 37 11 95 97 29 46 98 100 111 101 107...

result:

ok Correct.

Test #5:

score: 4
Accepted
time: 11ms
memory: 12256kb

input:

30
37 174
iGtEwpQ?kqZO
OZqk?QpwEtGq
OZqk?QpwEtG?
jGtEwpQ?kqZO
OZqk?QpwEtGu
OZqk?QpwEtGO
IGtEwpQ?kqZO
OZqk?QpwEtGw
SGtEwpQ?kqZO
BGtEwpQ?kqZO
OZqk?QpwEtGb
oGtEwpQ?kqZO
KGtEwpQ?kqZO
XGtEwpQ?kqZO
UGtEwpQ?kqZO
nGtEwpQ?kqZO
OZqk?QpwEtGp
lGtEwpQ?kqZO
OZqk?QpwEtGg
_GtEwpQ?kqZO
OZqk?QpwEtGY
OZqk?QpwEtGr
OZqk...

output:

110
1 2 3 6 7 8 12 122 14 15 16 18 20 86 123 108 107 156 99 22 21 24 133 69 91 13 26 28 31 35 37 38 44 45 48 49 50 51 40 56 158 153 70 57 103 134 126 42 101 17 59 60 129 127 84 61 63 105 95 5 65 36 87 146 100 68 115 148 75 72 162 120 119 71 157 169 111 4 10 73 74 76 104 23 78 39 79 83 88 90 92 140 1...

result:

ok Correct.

Test #6:

score: 4
Accepted
time: 12ms
memory: 16476kb

input:

30
28 163
BzleygJkKK
gdGiNNA?k.
qglX_GEvVWd
cIpmqbJIAC!U
q_MotjTfNX
YrTvPGRTKbnW
jrzBmcBQsw
t.jM.YxMYD
dqOpPkNmBT
fCGQHr!vYf
PZrGVRcDdUz
kklKFtFFNqP
GHcfKydBiHTj
weFZpvkQlQ
lJhGmiBGtLlh
K!?qmzmYiu
SUbVc.PiSU
GoqemRLiXXs
VVMdGHbtSN
AcJhbRhURKW
JNwhBUZxSRk
wLzONCLeyAE
myyaktsMhEH
SVwzBQQh.GCi
kNxhFcjW...

output:

126
2 3 5 6 9 10 11 7 13 68 16 48 29 31 105 58 12 19 80 14 24 20 1 27 26 73 28 30 59 97 75 77 90 151 162 163 160 122 133 96 92 107 83 63 99 55 36 38 46 72 47 71 129 118 49 50 51 62 86 101 60 70 91 98 132 40 61 79 124 153 143 18 65 108 148 140 157 149 142 85 130 93 44 74 21 25 23 76 115 150 161 127 1...

result:

ok Correct.

Test #7:

score: 4
Accepted
time: 13ms
memory: 16476kb

input:

30
32 168
fj_yTpB_YcEv
!j_yTpB_YcEv
vEcY_BpTy_js
vEcY_BpTy_jg
Kj_yTpB_YcEv
Uj_yTpB_YcEv
vEcY_BpTy_jP
mj_yTpB_YcEv
vEcY_BpTy_ju
Zj_yTpB_YcEv
vEcY_BpTy_jv
Tj_yTpB_YcEv
bj_yTpB_YcEv
pj_yTpB_YcEv
vEcY_BpTy_ji
vEcY_BpTy_jF
.j_yTpB_YcEv
Yj_yTpB_YcEv
Aj_yTpB_YcEv
zj_yTpB_YcEv
vEcY_BpTy_jt
vEcY_BpTy_jX
vEcY...

output:

136
1 11 87 129 74 13 54 24 41 63 14 123 126 15 44 28 57 137 149 45 56 16 161 133 157 127 140 97 18 112 46 42 19 55 148 159 17 21 22 9 139 80 51 138 23 8 73 79 135 62 27 94 152 96 155 168 156 93 130 102 29 78 64 30 12 110 31 34 83 33 35 43 122 88 58 59 131 125 81 95 106 40 26 2 67 141 89 32 76 98 14...

result:

ok Correct.

Test #8:

score: 4
Accepted
time: 13ms
memory: 16476kb

input:

30
32 168
OFBjSz_NqA
vFz!ZTNzIR
nljJhG!ro_
N!EqwUCFSIO
.lkTtUQuz_
rlkrtassDAu
EiqqUh?uNW
UrqRdKMSWCKi
aoeFwQvoftO
CXFPwk_AP.Sj
LXcKqfiasOQ
iEGWfwPkvDHt
AMIAlbc?giw
zDOWiTF!KQG
flUCnUqcPwh
EHsxJUvQgm
ueCDm_SlwA
TsnKKyLOqv
vZjVxrc!PDg
hQHuHuqfcqa
aDBXqENPORBX
uspFeYobvOe
WHdCXSApc.kQ
vqbyBV?!IL
NixXod...

output:

136
3 82 135 33 9 101 11 61 39 4 18 27 31 14 114 157 131 5 38 115 12 19 40 41 81 158 137 109 42 58 20 26 156 8 43 93 133 130 59 24 46 164 123 125 116 56 48 32 72 49 51 7 128 23 52 96 10 6 54 55 89 132 126 92 57 112 37 60 47 94 67 73 16 70 80 13 21 15 36 111 106 84 28 78 64 35 108 79 102 53 69 167 13...

result:

ok Correct.

Test #9:

score: 4
Accepted
time: 13ms
memory: 14484kb

input:

30
296 2195
K!YyGhp!Gl.Y
lFLYZGmNLy
pVAZuRySnD!g
RwwPPFcLMG
_QNQsvJNqhkZ
bslmJT.yuL
wOWjJfHqkD
yYAnD!pqJtP
pdjijhpxvX
Hk_IiwGCjV
eebSCJnHyd
LFMtXMAasMB
VYbnctPAg?
YDuIpaoDTEBY
de??KzSim_ub
VRVAGbwJYLl
.s?BbsCNWj
IHOaqvdxsx
DncVyohjab
aQQMMijXpBSi
rVxMTXneoFm
?HJXsmbXH?v.
c.KrBqwh?sI
kLoczbNPmMue
oat...

output:

1898
2 801 153 281 4 934 2048 2116 2099 2064 1966 1730 2070 1705 1739 14 1569 1857 1275 1105 754 312 106 1195 1158 294 869 790 16 245 1836 134 417 1342 17 455 649 18 1115 441 53 36 816 2160 1692 32 451 604 1899 316 350 359 884 590 793 37 242 1013 1501 1964 1826 2191 2122 1557 2147 2034 2157 2091 739...

result:

ok Correct.

Test #10:

score: 4
Accepted
time: 17ms
memory: 16472kb

input:

30
34 149
TfqnSAOpxRq
DtwPJm.ghzkO
hHdCRvQJG.At
l.WQg.v!yICt
nHPzIZPy!zoJ
.WKOXmnLvGmK
p_MM.vADQk
_EswrdFyyoaf
zrcIzTuVJtN
OfpWwS!byAky
pEEmid?xVi
ueim_rfLdR.?
cHZv!fwIlef
VVozgCXwdX?
WgMZxRVMhQB
YErodqcTkpKS
tc!vNbsHiQh
blDcRTRsek
XmwLFhGPCyx
nOs!R_M?YQ
vzSo!rChKHw
QwhkNQRkFsw
gjVWRcGOBs
XQFgcwJVnl...

output:

107
1 69 52 61 7 3 5 6 2 8 133 119 93 116 88 66 12 42 9 10 11 41 37 83 101 118 15 14 60 99 90 110 130 55 148 124 114 30 18 51 20 120 97 22 89 87 136 86 24 35 98 105 96 25 73 47 29 82 28 33 56 23 32 36 39 78 128 137 143 121 31 40 111 81 45 17 19 79 94 108 141 112 138 103 46 64 134 131 125 117 72 109 ...

result:

ok Correct.

Test #11:

score: 4
Accepted
time: 15ms
memory: 14440kb

input:

30
39 181
BEiCGrRPmHFM
?FHmPRrGCiEB
oFHmPRrGCiEB
YFHmPRrGCiEB
BEiCGrRPmHF_
BEiCGrRPmHFp
lFHmPRrGCiEB
BEiCGrRPmHFD
BEiCGrRPmHFB
BEiCGrRPmHFC
BEiCGrRPmHFP
dFHmPRrGCiEB
BEiCGrRPmHFO
hFHmPRrGCiEB
zFHmPRrGCiEB
FFHmPRrGCiEB
EFHmPRrGCiEB
AFHmPRrGCiEB
yFHmPRrGCiEB
BEiCGrRPmHFx
BEiCGrRPmHFf
BEiCGrRPmHFJ
BEiC...

output:

131
1 176 161 16 23 42 81 36 2 73 71 64 8 13 14 79 17 155 134 18 22 6 19 68 70 24 30 31 5 98 32 86 121 90 136 57 35 77 40 41 43 72 37 44 45 106 48 101 145 128 9 46 50 4 141 177 148 162 151 181 27 51 78 138 103 116 80 107 38 52 170 174 118 154 10 15 47 55 61 82 93 34 56 76 165 169 178 152 132 58 119 ...

result:

ok Correct.

Test #12:

score: 4
Accepted
time: 14ms
memory: 16432kb

input:

30
299 2221
CUscRFl!Y!
!NGeGkkgqKf
mxi?xcEjAvY
vRLSjVAwyTf
Jos!CsOJWaHA
juLYYH_hPzZu
yrj?Gt!MQCO
YiWC!TgjaH?O
?uAUKATuTbvu
RfbOyy!UAzWx
qRvLUZDtC!C
piCrwPLEMDku
qSQXXWYnxz
hGM?ik.gGSfe
Z!PEbb_wOuGN
sXtTcp.Uwy
lD_RWWL.ylme
lxsAAozRfq.
iWBBxQsHYKN!
COHBMlBwf_Y
pHOGeB_xhb
wIRf?npomha
fKdzbGojyeGq
mkbSh...

output:

1865
2 5 2043 1519 1637 1309 7 1336 894 1427 9 1090 11 812 492 1331 33 12 373 1111 420 10 14 16 782 17 1436 292 18 704 19 882 1326 111 20 22 296 1345 1684 23 531 649 227 25 1922 188 635 28 29 1953 1144 1218 1999 1624 396 31 32 2184 2132 2182 1776 361 34 1338 2081 2130 1266 35 1529 1425 39 41 1905 17...

result:

ok Correct.

Test #13:

score: 4
Accepted
time: 15ms
memory: 16448kb

input:

30
296 2191
.ls.paaIC.
vwPSDMubAA
PQjPGeOVesYQ
amhPAxTDcS
YHIYufo!Xk
PHp.ywUjrmaJ
PCZpBhINrsn
f?IOYZQ_RxM
uaitSaXHImn
SXPuuMuNbe
JfTEZmKXz?Q?
ypPKDcvi?L
HjoMtljhh_K?
mCSC?mrCppda
EYGtMXxhSXM
PNrrHyLFxGA
xFuxXBejBJDS
EIOYSBujnCu
.fqXVRnkkgdD
dXJtWg!DywME
?JvpnsbWCFk
ffYukXaAnJL
ytMQvDFSBkEn
zYZItVPDs...

output:

1842
1 2 91 513 6 7 9 1369 1744 1032 522 10 369 14 16 556 478 21 854 23 649 1119 1015 785 108 24 264 109 414 1059 787 25 1432 1855 1613 1342 715 669 26 1320 34 191 306 1152 36 534 131 37 500 1846 38 40 153 44 637 50 497 1028 603 57 892 1279 1301 445 59 61 2158 1717 1930 1898 1437 65 1363 1574 1805 1...

result:

ok Correct.

Test #14:

score: 4
Accepted
time: 344ms
memory: 32708kb

input:

100
37 229
fMbXOgQT.YC?
fMbXOgQT.YCA
fMbXOgQT.YCq
fMbXOgQT.YC!
fMbXOgQT.YCL
fCY.TQgOXbMf
fMbXOgQT.YCi
VCY.TQgOXbMf
fMbXOgQT.YCE
fMbXOgQT.YCW
gCY.TQgOXbMf
eCY.TQgOXbMf
fMbXOgQT.YCj
fMbXOgQT.YCZ
UCY.TQgOXbMf
fMbXOgQT.YCz
fMbXOgQT.YCv
fMbXOgQT.YCk
wCY.TQgOXbMf
.CY.TQgOXbMf
YCY.TQgOXbMf
fMbXOgQT.YCc
fMb...

output:

192
8 46 9 70 19 93 64 15 18 199 212 31 25 26 41 38 4 28 65 30 79 14 80 63 32 29 49 109 125 215 194 139 164 142 197 192 201 167 210 149 56 206 198 222 143 172 160 187 111 107 136 53 61 68 11 62 105 122 52 75 43 69 72 124 185 205 90 88 130 74 76 95 22 27 77 35 117 144 137 71 12 83 78 85 102 54 113 50...

result:

ok Correct.

Test #15:

score: 4
Accepted
time: 338ms
memory: 32744kb

input:

100
40 257
gE?fFSdapGwW
WwGpadSFf?Er
QE?fFSdapGwW
KE?fFSdapGwW
WwGpadSFf?EA
WwGpadSFf?Ev
lE?fFSdapGwW
cE?fFSdapGwW
WwGpadSFf?Ei
GE?fFSdapGwW
HE?fFSdapGwW
WwGpadSFf?Eq
zE?fFSdapGwW
WwGpadSFf?EL
dE?fFSdapGwW
WwGpadSFf?En
WwGpadSFf?Ee
aE?fFSdapGwW
WwGpadSFf?Eu
SE?fFSdapGwW
WwGpadSFf?Ef
WwGpadSFf?EF
?E?...

output:

217
20 30 32 62 34 43 3 47 48 106 57 44 63 64 21 49 65 108 26 17 70 8 15 4 76 82 55 75 88 207 215 249 188 233 141 84 77 91 105 144 122 190 169 237 234 232 246 229 83 113 126 187 92 120 93 99 10 102 96 104 1 109 116 80 89 69 81 38 36 13 22 114 247 231 253 214 216 228 239 180 174 35 74 155 213 227 221...

result:

ok Correct.

Test #16:

score: 4
Accepted
time: 346ms
memory: 33548kb

input:

100
48 235
rQwzIJIECH.
sHIrfxcFOzh?
fjyfN.VfyUc_
cqSJbkhGnvN
zQ_YiZJQG!p
dpB_yEOtYMsP
tZ!DgibUTCom
X!VbNNtjqAG
TVDBRrRK!Kg
ngRjPukiMgB
puuuHN.BdW
syI.!_kjVod
swGUueBxJkfC
PWpOzFkSjvB
IuRjFJwLeef
HrGDcoptd_L
uDqKFgRRbic
kDVinBwAyTe
!m?tIqISxLG
KweFXtM_XNSv
nlRYoYgiI!
_lo!z_rHy.T
.pErbUIEMAE
.RMMgrxez...

output:

166
1 2 3 6 12 13 17 20 22 24 25 109 18 42 26 28 32 36 52 97 180 108 39 44 38 45 46 47 86 103 37 51 54 55 168 175 234 223 213 231 225 209 219 202 196 43 70 15 10 56 64 57 95 85 34 30 59 50 121 74 101 76 157 192 53 136 137 116 58 35 62 67 69 72 75 27 19 83 87 89 90 92 173 78 61 145 178 102 73 94 31 6...

result:

ok Correct.

Test #17:

score: 4
Accepted
time: 400ms
memory: 33920kb

input:

100
49 231
hTKBowtR?xxV
CTKBowtR?xxV
jTKBowtR?xxV
tTKBowtR?xxV
fTKBowtR?xxV
yTKBowtR?xxV
Vxx?RtwoBKTe
Vxx?RtwoBKTp
Vxx?RtwoBKTJ
Vxx?RtwoBKTu
Vxx?RtwoBKTS
XTKBowtR?xxV
Vxx?RtwoBKTs
NTKBowtR?xxV
Vxx?RtwoBKTr
ZTKBowtR?xxV
BTKBowtR?xxV
ITKBowtR?xxV
DTKBowtR?xxV
Vxx?RtwoBKTE
Vxx?RtwoBKTM
Vxx?RtwoBKTL
UTK...

output:

182
1 7 162 168 127 177 12 9 13 161 119 32 18 35 45 95 100 90 30 50 21 22 58 123 153 150 51 24 216 137 77 26 196 148 98 166 167 10 16 36 101 139 85 103 40 3 28 27 48 56 20 131 82 201 217 152 147 193 203 64 141 155 80 186 128 110 114 29 41 74 231 190 230 179 169 121 61 71 81 43 224 221 130 160 226 18...

result:

ok Correct.

Test #18:

score: 4
Accepted
time: 398ms
memory: 33720kb

input:

100
38 256
ZARmlFP!BuNE
ENuB!PFlmRAv
tARmlFP!BuNE
ENuB!PFlmRAC
YARmlFP!BuNE
ENuB!PFlmRAN
EARmlFP!BuNE
JARmlFP!BuNE
zARmlFP!BuNE
ENuB!PFlmRAj
ENuB!PFlmRAg
rARmlFP!BuNE
BARmlFP!BuNE
sARmlFP!BuNE
oARmlFP!BuNE
mARmlFP!BuNE
WARmlFP!BuNE
eARmlFP!BuNE
ENuB!PFlmRAQ
ENuB!PFlmRAP
bARmlFP!BuNE
.ARmlFP!BuNE
ENu...

output:

218
1 121 68 109 49 5 93 201 137 123 231 221 206 151 119 150 168 128 132 12 41 104 120 4 136 178 60 112 17 50 13 20 63 33 22 3 84 99 173 192 23 103 24 14 27 66 16 163 203 47 19 26 29 147 236 244 256 106 48 88 141 78 44 100 35 34 36 18 184 130 59 165 170 7 30 73 160 190 219 247 246 253 251 241 230 45...

result:

ok Correct.

Test #19:

score: 4
Accepted
time: 402ms
memory: 33956kb

input:

100
42 222
jmkootSXiZ
mWhoHNURiY
VUseF.Y_KAr
zedzeXFnSV!h
MugQz?bXs?n
nxgnJZzbKZ
xP.ZFX!NG_T
mwut_dUUIIpe
P?YgAA.tHx
.ksdRBEDMVGR
J_iwVZXqVEN
MvsELmrvjrT
FuAsbulWTe
LDAUkkWmlT
KsdSADmwm.CQ
qzbLzm?IOhl
jLxpYahEXS
gAybIDI_VYi
jXasQbfNRnIA
o.YWEoULQMZ
hTMhqSnvFOWG
t?QEczqaYklA
PiaiBu_NPJt
Ezvig.in?G
AR...

output:

180
1 4 5 12 64 47 121 135 143 6 39 8 11 130 168 104 160 16 34 79 126 98 116 123 42 25 19 3 20 26 24 187 188 96 145 171 30 33 110 175 166 156 195 203 214 210 164 78 15 37 38 41 45 106 124 196 181 205 192 99 49 117 52 17 53 62 131 169 46 22 55 81 57 71 158 198 208 178 85 65 58 150 60 92 40 61 50 14 9...

result:

ok Correct.

Test #20:

score: 4
Accepted
time: 763ms
memory: 33740kb

input:

100
32 236
gDBkQygRmXGf
DzgosmXBRL
DPpicDZAFlF
CULmbsr.etf
nFIxBkPYhE
DLQpMlVoPBr
HLfkkADNASFD
LTWrUNjcIn
Nrj.Ls?aeKOJ
DYw_hgITGW
wsbpKIIMN_o
BoxPjqJ.Ps
SkvDAnf..dvE
RMkisXjf_QSk
wKVFtHFaG_
XzGGA_S!NZ?H
FzpdxTWnb_G
gsYVmejwPcqi
mOoWwJuxhUKD
lyfoCxJNbt
CFPGpsdmsvf
HdrBp?bUWQkH
sJpwIYuYevZ
NbpVpB.foE
...

output:

182
2 3 30 5 104 166 134 224 233 188 6 56 29 7 107 45 8 74 120 82 117 11 176 15 18 80 178 230 222 226 209 47 19 62 145 193 20 139 177 114 21 83 215 225 197 170 76 22 13 71 164 220 126 212 27 23 41 70 9 24 156 32 34 95 160 35 10 36 116 78 39 130 112 135 140 73 40 43 96 44 81 122 37 46 79 128 103 94 4...

result:

ok Correct.

Test #21:

score: 4
Accepted
time: 800ms
memory: 31808kb

input:

100
41 251
AKyUZjS!HCog
goCH!SjZUyKI
CKyUZjS!HCog
tKyUZjS!HCog
goCH!SjZUyK_
PKyUZjS!HCog
TKyUZjS!HCog
goCH!SjZUyK!
rKyUZjS!HCog
goCH!SjZUyKX
hKyUZjS!HCog
LKyUZjS!HCog
sKyUZjS!HCog
MKyUZjS!HCog
iKyUZjS!HCog
goCH!SjZUyKS
kKyUZjS!HCog
goCH!SjZUyKQ
GKyUZjS!HCog
EKyUZjS!HCog
RKyUZjS!HCog
eKyUZjS!HCog
qKy...

output:

197
3 11 210 148 37 223 169 55 2 14 79 143 155 130 154 125 123 120 151 224 242 171 100 72 6 18 108 144 213 19 86 23 173 204 184 209 9 27 28 94 97 30 16 31 179 197 230 129 168 90 4 32 35 39 229 191 246 234 244 238 241 222 105 101 26 22 40 15 98 10 203 217 249 232 156 128 42 227 166 237 250 164 239 16...

result:

ok Correct.

Test #22:

score: 4
Accepted
time: 776ms
memory: 33712kb

input:

100
47 262
NUgKTQWLqlSu
J_UepZVpZI!
OFybuzA.ts
aJ!oeiupGpt
qEgiXBlraO
G.InLDNYalJ
IKqd?LBbOcS
fGfB.YSKA?
HkgFU.G_FGZ!
QVUDexUYhPt
yVKXraeLEjz
uBNttpsXtQew
_rh_WoubMp
dBmNlhaKQK
rcDEYYtaeF
..wusKVgmxn
jSyLVgt_CkL
GxAwCFvGADS
EszfFlNthk_
EcxJBVUIZw
WrbZ_qvBHIUq
bTgeRogA_oAF
Xr!ELlblATX
zOvG!alEcx
vtrG...

output:

197
1 4 25 6 18 7 132 223 262 134 54 11 80 185 85 55 9 69 12 242 169 177 239 116 157 16 145 17 250 254 115 222 238 257 255 176 19 38 90 180 259 261 236 67 20 21 209 224 92 219 231 246 119 86 170 84 79 26 27 39 166 62 184 110 175 112 28 173 204 253 248 218 171 93 29 201 214 232 234 235 30 31 107 197 ...

result:

ok Correct.

Test #23:

score: 4
Accepted
time: 620ms
memory: 30776kb

input:

100
44 263
GSwTGPndPrW
fQ_HniYihylp
zeLunnprU.
!Xx?xCWdZaS
yfQrY!laHT
xRHVh.bwwOxY
rZTEYbwQeiW
kdBlS_?iWW
bPVYVCLdjgkw
cheZRqcCFAN
tXFglACkIog
lnqlbAnTByp
wlTUrKRxXAGt
jORjpjqnt.
damueIrdQY
RANWBksGZZdd
CucYTniEj.M
ueLzXFh?TV
RqKArM?pZo
ozu!_Vtkrx
QqbuBOLfGc
sTRTdSKbkZLz
od_yHkJZXmt
efyCIFkzMdP
OMDG...

output:

209
1 50 141 11 58 118 37 12 13 16 244 259 77 18 19 112 245 103 20 243 241 257 254 210 26 28 29 252 201 30 120 2 31 203 87 32 33 35 104 131 17 36 218 234 240 242 250 191 38 10 39 175 211 40 149 65 42 225 173 15 44 45 132 143 223 187 61 46 174 63 47 90 53 255 197 54 57 22 228 60 62 6 27 67 70 68 34 1...

result:

ok Correct.

Test #24:

score: 4
Accepted
time: 591ms
memory: 30528kb

input:

100
45 248
zJwHpe_rlmeC
zJwHpe_rlmex
Memlr_epHwJz
temlr_epHwJz
oemlr_epHwJz
uemlr_epHwJz
zJwHpe_rlmeR
zJwHpe_rlmee
zJwHpe_rlmeQ
gemlr_epHwJz
demlr_epHwJz
zJwHpe_rlmea
zJwHpe_rlmeB
Yemlr_epHwJz
Eemlr_epHwJz
remlr_epHwJz
zJwHpe_rlmeA
zJwHpe_rlmew
zJwHpe_rlmei
zJwHpe_rlmeU
zJwHpe_rlmeS
Lemlr_epHwJz
Pem...

output:

200
1 91 2 154 61 4 54 158 240 185 7 9 8 126 248 235 244 229 182 236 105 42 31 11 20 13 207 62 15 53 16 17 242 30 18 241 220 21 22 26 97 27 178 245 203 237 198 165 38 28 208 218 29 110 39 194 40 222 247 148 150 43 123 33 44 50 51 52 59 202 232 221 212 157 32 66 82 117 36 114 67 14 103 243 168 151 21...

result:

ok Correct.

Test #25:

score: 4
Accepted
time: 611ms
memory: 30144kb

input:

100
49 294
XffSYEnSOVF
h.UQkRgrjER
PJOu?WVkaF
QwuvOKStQV
yEw_.VGRFoin
GxnGO.hEZh
fDTLxVKNobB
bYPNHVjs_SG
WgbSzRKxbhH
u.py_GkcRyk
WwDZdqsFLO
ZSJQMjyCVDc
JlaAWop.Lv_
PpZZ!Bqveo
kGGEbPCmDqUB
STUKjUFmfqV
lLJY!jzeCOl_
SBlmMsHDMh
FIkInhGMhe
Oymidks!bYY
rptc!EVznL!
fXXggRKsa!RT
CCeQkacXRA!
.IKFMJTtrLW
EpbE...

output:

230
1 184 2 4 3 5 7 272 226 165 8 151 212 280 268 254 260 197 246 195 183 95 9 12 13 15 294 114 16 17 30 19 20 153 229 287 273 190 26 98 60 28 27 110 149 172 39 22 31 198 146 85 40 237 209 166 41 43 137 47 14 51 34 52 53 54 286 252 262 207 188 106 57 6 225 256 227 58 102 61 62 255 249 147 206 221 11...

result:

ok Correct.

Extra Test:

score: 0
Extra Test Passed