30分求助,TLE+RE
查看原帖
30分求助,TLE+RE
576173
FanSizhe127楼主2022/12/27 11:59
#include<bits/stdc++.h>
using namespace std;
int a,b,o=0,l;
string h[100005];
char add(char ch)
{
	if(ch=='9')return '0';
	return ch+1;
}
char ajj(char ch)
{
	if(ch=='0')return '9';
	return ch-1;
}
void dfs(string s,int x,int y)
{
	if(x>a||y>b)return ;
	h[++o]=s;
	//cout<<h[o]<<'\n';
	for(int i=0;i<l;i++)
	{
		string f=s;
		f[i]=add(s[i]);
		dfs(f,x+1,y);
		f[i]=ajj(s[i]);
		dfs(f,x,y+1);
	//	dfs(s,x,y);
	}
}
int main()
{
	string n;
	cin>>n>>a>>b;
	l=n.size();
	dfs(n,0,0);
	sort(h+1,h+o+1);
	cout<<h[o];
}
2022/12/27 11:59
加载中...