UOJ Logo

NOI.AC

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#212054#3817. 写字wochengX123304ms2648kbC++768b2024-10-13 10:42:462024-10-13 12:17:54

answer

#include<bits/stdc++.h>
using namespace std;
int n,m;
string s,t;
struct P
{
	int x;
	int len;
	int time;
	char c;
};
void bfs()
{
	int maxn=-1;
	queue<P> q;
	for(int i=0;i<n;i++)
	    if(s[i]==t[0])
	        q.push({i,1,0,t[0]});
	while(!q.empty())
	{
		P r=q.front(); q.pop();
		if(r.len>m||r.c!=t[r.len-1])
		    continue;
		if(r.len==t.size())
		{
			cout<<r.time;
			return;
		}
		if(q.size()>100000) 
		    break;
		if(r.x) 
		    q.push({r.x-1,r.len+1,r.time+1,s[r.x-1]});
		if(r.x!=n-1)
		    q.push({r.x+1,r.len+1,r.time+1,s[r.x+1]});
		for(int i=0;i<n;i++)
	        if(s[i]==r.c&&i!=r.x)
	            q.push({i,r.len,abs(r.time+r.x-i),s[r.x]});
	} 
	cout<<-1;
}
int main()
{
	cin>>n>>m>>s>>t;
	bfs();
	return 0;
}

详细

小提示:点击横条可展开更详细的信息

Subtask #1:

score: 0
Wrong Answer

Test #1:

score: 20
Accepted
time: 0ms
memory: 1244kb

input:

1 1
v
v

output:

0

result:

ok 1 number(s): "0"

Test #2:

score: -20
Wrong Answer
time: 1ms
memory: 1248kb

input:

5 5
bacbb
cabcb

output:

3

result:

wrong answer 1st numbers differ - expected: '7', found: '3'

Subtask #2:

score: 30
Accepted

Test #3:

score: 30
Accepted
time: 0ms
memory: 1264kb

input:

26 300
ywzhvjnpdfqtukimsrbxageloc
brsmsrbxbxbxbxagagagegelococololegaxagaxaxbxbrbxbrsrsmikimikikimim...

output:

299

result:

ok 1 number(s): "299"

Test #4:

score: 0
Accepted
time: 0ms
memory: 1260kb

input:

26 300
wempkfsunqgytdzibajorvxhlc
gqnununqnusfsununununqnununususunusususfkpmewewewewewempkfkpkpmpmp...

output:

299

result:

ok 1 number(s): "299"

Test #5:

score: 0
Accepted
time: 1ms
memory: 1260kb

input:

26 300
gieywcraxnvblsuojfpthdkmzq
nvbvbvblsusuojfjojouoususlslbvnxnxnxarcraxnvnvnxnxnvnxnxnvblslsusu...

output:

299

result:

ok 1 number(s): "299"

Subtask #3:

score: 0
Wrong Answer

Test #6:

score: 0
Wrong Answer
time: 2ms
memory: 2648kb

input:

300 300
hgbfdbgcghedefchdabhgdddahcdedebceffegfbceehceeheggffhhddbecbfdhceeedcaeeebdaddfgccggfdcachg...

output:

-1

result:

wrong answer 1st numbers differ - expected: '3643', found: '-1'