求助90分TLE#10
查看原帖
求助90分TLE#10
533160
rainbow_cat楼主2023/7/3 09:57
#include<bits/stdc++.h>
using namespace std;
int st,ed,nn;
string s;
void dfs(string ret)
{
	int n=5;
	while(n>=1)
	{
		bool pd=1,ppd=1;
		int i=nn-1;
		ret[nn-1]++;
		while(ret[i]>='a'+ed)ret[i]='a'+st+i-1,ret[--i]++;
		if(i==0)return;
		for(int j=1;j<nn;j++)
		{
			if(ret[j]<=ret[j-1])pd=0;
			//if(ret[j]!=ret[j-1]+1)ppd=0;			
		}
		//if(ppd)return;
		if(pd==1)n--,cout<<ret<<'\n';
	}
}
int main()
{
	cin>>st>>ed>>nn>>s;
	if(nn==ed-st+1)return 0;
	dfs(s);		
	return 0;
}

QAQ

2023/7/3 09:57
加载中...