思路:
一个排序下去,然后从小到大挨个变成数字 9 就好了。
代码:
#include<bits/stdc++.h>
#define maxn 100050
using namespace std;
int k;
char a[maxn];
int b[maxn];
int main()
{
scanf("%d",&k);
scanf("%s",a);
int n=strlen(a);
int sum=0;
for(int i=0;i<n;i++)
{
b[i]=a[i]-'0';
sum+=(a[i]-'0');
}
sort(b,b+n);
//cout<<b[0]<<b[1];
int flag=k-sum;
int ans=0;
for(int i=0;i<n;i++)
{
if(flag<=0)
{
printf("%d\n",ans);
return 0;
}
if(b[i]==9)continue;
flag-=(9-b[i]);
ans++;
}
printf("%d\n",ans);
}