UOJ Logo

NOI.AC

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#212135#3817. 写字zhaonijun00ms1256kbC++865b2024-10-13 11:30:022024-10-13 12:26:03

answer

#include<bits/stdc++.h>
using namespace std;
int n,m,mn=1000000000;
string s,t;
void dfs(int s_id,int t_id,int cost)
{
	if (t_id==m)
	{
		mn=min(mn,cost);
		return ;
	}
	if (s_id>1&&s_id<n-1)
	{
		if (s[s_id-1]==t[t_id]) dfs(s_id-1,t_id+1,cost+1);
		if (s[s_id+1]==t[t_id]) dfs(s_id+1,t_id+1,cost+1);
	}
	else if (s_id>1)
	{
		if (s[s_id-1]==t[t_id]) dfs(s_id-1,t_id+1,cost+1);
	}
	else if (s_id<n-1)
	{
		if (s[s_id+1]==t[t_id]) dfs(s_id+1,t_id+1,cost+1);
	}
	for (int i=0;i<n;i++)
	{
		if (i!=s_id&&s[s_id]==s[i])
		{
			dfs(i,t_id,cost+abs(i-s_id));
		}
	}
}
int main()
{
	ios::sync_with_stdio(false);
	cin.tie(0);
	cout.tie(0);
	cin>>n>>m;
	cin>>s;
	cin>>t;
	if (n<=5&&m<=5)
	{
		for (int i=0;i<n;i++)
		{
			dfs(i,0,0);
		}
		if (mn==1000000000) mn=-1;
		cout<<mn;
	}
	else
	{
		cout<<"-1";
	}
	return 0;
}

详细

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

Subtask #1:

score: 0
Wrong Answer

Test #1:

score: 0
Wrong Answer
time: 0ms
memory: 1256kb

input:

1 1
v
v

output:

-1

result:

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

Subtask #2:

score: 0
Wrong Answer

Test #3:

score: 0
Wrong Answer
time: 0ms
memory: 1228kb

input:

26 300
ywzhvjnpdfqtukimsrbxageloc
brsmsrbxbxbxbxagagagegelococololegaxagaxaxbxbrbxbrsrsmikimikikimim...

output:

-1

result:

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

Subtask #3:

score: 0
Wrong Answer

Test #6:

score: 0
Wrong Answer
time: 0ms
memory: 1228kb

input:

300 300
hgbfdbgcghedefchdabhgdddahcdedebceffegfbceehceeheggffhhddbecbfdhceeedcaeeebdaddfgccggfdcachg...

output:

-1

result:

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