⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 4746294_ac_344ms_780k.cpp

📁 部分PKU上的源码
💻 CPP
字号:
#include<iostream>
#include<string>
using namespace std;
string q[10005];
string out[10005];
string input;
int ql,outl;
bool canmatch(string x)
{
	int i,j;
	if(x.length()==input.length()+1)
	{
		j=0;
		for(i=0;i<input.length();i++)
		{
			if(j>=x.length()) return false;
			if(input[i]==x[j]) j++;
			else
			{
				i--;j++;
			}
		}
		return true;
	}
	else
	if(x.length()==input.length())
	{
		int mis=0;
		for(i=0,j=0;i<x.length();j++,i++)
		{
			if(x[i]!=input[j])
			{
				mis++;
				if(mis>1) return false;
			}
		}
		return true;
	}
	else
	if(x.length()==input.length()-1)
	{
		j=0;
		for(i=0;i<x.length();i++)
		{
			if(j>=input.length()) return false;
			if(x[i]==input[j]) j++;
			else
			{
				i--;j++;
			}
		}
		return true;
	}
	else return false;
}
void slove()
{
	int i;
	outl=0;
	for(i=0;i<ql;i++) 
	{
		if(q[i]==input) {cout<<input<<" is correct\n";return;}
		if(canmatch(q[i]))
		{
			out[outl]=q[i];outl++;
		}
	}
	cout<<input<<":";
	for(i=0;i<outl;i++) cout<<" "<<out[i];
	cout<<endl;
}
int main()
{
	ql=0;
	//string jing;
	//cin>>input>>jing;
	//canmatch(jing);
	while(1)
	{
		cin>>q[ql];
		ql++;
		if(q[ql-1]=="#") {ql--;break;}
	}
	while(1)
	{
		cin>>input;
		if(input=="#") return 0;
		slove();
	}
	return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -