#include<bits/stdc++.h>
using namespace std;
#define int long long
long long n, ans, a[101], b[101], s[101], cnt, f[101], A, B;
void dfs(int x, int y, long long answer) {
ans = max(ans, answer / 10);
if (x == cnt + 1)return;
if (A >= a[x]) {
A -= a[x];
dfs(x + 1, y + 1, (answer + a[x]) * 10 + f[y]);
A += a[x];
} else {
int aa = A;
A = 0;
dfs(x + 1, y + 1, (answer + aa) * 10 + f[y]);
A = aa;
}
if (B >= b[x]) {
B -= b[x];
dfs(x + 1, y + 1, (answer + a[x]) * 10 + f[y]);
B += b[x];
} else dfs(x + 1, y + 1, answer * 10 + f[y]);
}
signed main() {
cin >> n >> A >> B;
while (n) {
s[++cnt] = n % 10;
n /= 10;
}
for (int i = 1; i <= cnt; i++)f[i] = s[cnt - i + 1];
for (int i = 1; i <= cnt; i++) {
a[i] = 9 - f[i];
b[i] = f[i] + 1;
}
dfs(0, 1, 0);
cout << ans << endl;
return 0;
}