https://www.lanqiao.cn/problems/2193/learning/?subject_code=1&group_code=4&match_num=13&match_flow=2&origin=cup
#include<bits/stdc++.h>
using namespace std;
#define endl '\n'
using ll = long long;
using pii = pair<int, int>;
const double PI = acos(-1);
const int N=3e5+10;
const int mod = 1e9 + 7;
string s;
int len;
int a,b;
string ans;
void dfs(int u){
if(u==len) {
if(s>ans){
// cout<<s<<" "<<ans<<endl;
ans=s;
}
return;
}
int t=(int)(s[u]-'0');
int c=min(9-t,a);
a-=c;
s[u]+=c;
dfs(u+1);
a+=c;
s[u]-=c;
if(b>t){
b-=t+1;
char now=s[u];
s[u]='9';
dfs(u+1);
s[u]=now;
b+=t+1;
}
}
void solve() {
ll n;cin>>n;
cin>>a>>b;
s=to_string(n);
ans=s;
len=s.size();
dfs(0);
cout<<ans;
}
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr), cout.tie(nullptr);
int T = 1;
//cin>>T;
while (T--) {
solve();
}
return 0;
}